Junior — Middle
Go tilida merosxo'rlik mexanizmi qanday amalga oshiriladi va uning amalga oshirilishi qanday?
sobes.tech AI
AIdan javob
Go tilida an'anaviy merosxo'rlik yo'q, ob'ektga yo'naltirilgan tillardagi kabi. O'rniga, kompozitsiya va interfeyslar ishlatiladi.
-
Kompozitsiya: Strukturani meros qilish o'rniga, bir strukturani boshqasiga qo'shish mumkin. Bu, xulq va ma'lumotlarni "o'rnatish" imkonini beradi.
-
Interfeyslar: Go, xulqni tasvirlash uchun interfeyslarni ishlatadi. Interfeys metodlarini amalga oshiradigan har qanday struktur, uning amalga oshirilishi hisoblanadi.
Kompozitsiya misoli:
package main
import "fmt"
type Animal struct {
Name string
}
func (a Animal) Speak() {
fmt.Println(a.Name, "aytadi")
}
type Dog struct {
Animal // Animal strukturasi qo'shilishi
}
func main() {
d := Dog{Animal{Name: "Bobby"}}
d.Speak() // Animal metodini chaqiradi
}
Shu tarzda, Go, an'anaviy meros o'rniga kompozitsiya va interfeyslar ishlatilishini rag'batlantiradi.