匿名メソッドの埋め込みを使用するときに、「親」構造体のメソッドから「子」構造体の名前にアクセスする方法はありますか。
例えば:
type Animal struct{}
func (a Animal) SayName() string {
v := reflect.TypeOf(a)
return v.Name()
}
type Zebra struct {
Animal
}
var zebra Zebra
zebraName := zebra.SayName() // "Animal" want "Zebra"
SayName()メソッドはtype.Name()
、「親」のを返します。
私はこのようなことができると思いますが、これはAPI用であり、頻繁に再利用されるためです。繰り返しの少ないソリューションが欲しいです。
type Animal struct{
Name string
}
func (a Animal) SayName() string {
return a.Name
}
type Zebra struct {
Animal
}
zebra := &Zebra{Name:"Zebra"}
zebraName := zebra.SayName() // "Zebra"
これをどのように達成できるかについてのアイデアはありますか?これはGoで可能ですか?
ありがとうございました。