Go nie ma dziedziczenia — zamiast tego używa composition poprzez osadzanie struktur. Osadzając jedną strukturę (lub interfejs) wewnątrz innej, zewnętrzny typ zyskuje pola i metody wewnętrznego typu bezpośrednio. To jest rozwiązanie Go na temat ponownego użytku kodu, preferując skład "has-a" zamiast dziedziczenia "is-a".
Osadzanie struktury
Animal {
Name
}
Eat() {
a.Name +
}
Dog {
Animal
Breed
}
d := Dog{
Animal: Animal{Name: },
Breed: ,
}
fmt.Println(d.Name)
fmt.Println(d.Eat())
