Go har ingen arv — istället använder det komposition via struct-inbäddning. Genom att bädda in en struct (eller ett interface) inuti en annan får den yttre typen den inre typens fält och metoder direkt. Detta är Gos svar på kodåteranvändning, där "har-ett" komposition föredras framför "är-ett" arv.
Bädda in en struct
Animal {
Name
}
Eat() {
a.Name +
}
Dog {
Animal
Breed
}
d := Dog{
Animal: Animal{Name: },
Breed: ,
}
fmt.Println(d.Name)
fmt.Println(d.Eat())
