1234567891011121314151617181920212223 |
- package third_pkg
- // 从grpc的生成文件中学习到的,当我实现一个接口时,结构中必须嵌入作者给定的一个结构,可以这样做。
- // ThirdPkg 假设作者定义了一个接口,接口中有一个小写函数。再别的包中定义的结构是无法实现这个接口的。
- // 此时我们在本包内定义一个结构来实现该接口,这样在别的包中,如果有外部包的结构想实现ThirdPkg这个接口,就必须嵌入我们这个包内的结构UnimplementedThirdPkg
- type ThirdPkg interface {
- GetID() string
- getName() string
- }
- type UnimplementedThirdPkg struct {
- }
- func (u UnimplementedThirdPkg) GetID() string {
- //TODO implement me
- panic("implement me")
- }
- func (u UnimplementedThirdPkg) getName() string {
- //TODO implement me
- panic("implement me")
- }
|