third_pkg.go 812 B

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