如果我有两种类型:
type A struct {
X int
Y int
}
type B struct {
X int
Y int
Z int
}
鉴于两者都访问同名字段并返回它们的总和,有没有什么方法可以在不需要两种方法的情况下实现以下目标?
func (a *A) Sum() int {
return a.X + a.Y
}
func (b *B) Sum() int {
return b.X + b.Y
}
当然,如果是 X 和 Y 方法,我可以定义一个包含这两种方法的接口。有没有字段的类比?