Sobes.tech
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.