假设我有一个接口 Foo,我正在添加一个结构,它需要 Foo 的方法和一些额外的方法。在那种情况下,以下两个被认为是最佳实践?或者如果有其他更合适的第三种方式,那么请提出建议。
方法一
type Foo interface {
methodA()
}
type Bar struct {
}
func (b Bar) methodA () {
...
}
func (b Bar) methodB () {
...
}
方法二
type Foo interface {
methodA()
}
type Bar struct {
Foo // this can be initialized with any concrete implementation of Foo
}
func (b Bar) methodB () {
...
}
另外,如果能指出上述方法更适合哪些场景,那就太好了?谢谢!
幕布斯6054654
相关分类