Ответ
Для вызова метода родительской структуры из встроенной (анонимно встроенной) структуры в Go, нужно явно указать имя родительской структуры при вызове метода. Пример:
type Parent struct{}
func (p Parent) Hello() {
fmt.Println("Hello from Parent")
}
type Child struct {
Parent // встраивание
}
func main() {
c := Child{}
c.Parent.Hello() // явный вызов метода родителя
c.Hello() // неявный вызов (если метод не переопределен)
}
Если метод Hello() не переопределен в Child, можно вызывать его напрямую через c.Hello(). При переопределении метода в дочерней структуре, для вызова родительской версии нужно использовать явное обращение через имя встроенной структуры.