Go nu are moștenire — în schimb folosește compoziție prin embedding de structuri. Prin încapsularea unei structuri (sau interfață) în altă structură, tipul exterior dobândește direct câmpurile și metodele tipului interior. Aceasta este răspunsul Go la reutilizarea codului, favorizând compoziția "has-a" în locul moștenirii "is-a".
Embedding de structuri
Animal {
Name
}
Eat() {
a.Name +
}
Dog {
Animal
Breed
}
d := Dog{
Animal: Animal{Name: },
Breed: ,
}
fmt.Println(d.Name)
fmt.Println(d.Eat())
