Junior — Middle
Go dilində irs mexanizmi necə həyata keçirilir və onun tətbiqi necədir?
sobes.tech Süni İntellekt
AI-dan cavab
Go dilində klassik irsi yoxdur, obyekt yönümlü dillərdə olduğu kimi. Əvəzinə, kompozisiya və interfeyslər istifadə olunur.
-
Kompozisiya: Struktur irsi yerinə, bir strukturu digərinə daxil etmək mümkündür. Bu, davranış və məlumatların "gömülməsinə" imkan verir.
-
Interfeyslər: Go, davranışı təsvir etmək üçün interfeyslərdən istifadə edir. Hər hansı bir struktur interfeysin metodlarını həyata keçirirsə, onun icrası sayılır.
Kompozisiya nümunəsi:
package main
import "fmt"
type Animal struct {
Name string
}
func (a Animal) Speak() {
fmt.Println(a.Name, "danışır")
}
type Dog struct {
Animal // strukturun daxil edilməsi
}
func main() {
d := Dog{Animal{Name: "Bobby"}}
d.Speak() // Animal metodunu çağırır
}
Beləliklə, Go klassik irsi yerinə kompozisiya və interfeyslərin istifadəsini təşviq edir.