Sobes.tech
Junior — Middle

Child класстагы Init ыкмасы негизги классынан мурас болуп саналабы же кайра аныктамабы?

sobes.tech AI

AIден жооп

Bir törəmə sinifdəki Init metodu, əsas sinifin tətbiqini miras almırsa, yenidən elan olunduqda (yəni, eyni adla, amma öz tətbiqi ilə) miras alınmır. Bu halda, metodun üzərinə yazılmış (override) deyilir. Override etmək, obyektdə çağırıldıqda, onun versiyasının istifadə olunacağı, əsas sinfin deyil, deməkdir.

Əgər Init metodu törəmə sinifdə elan olunmayıbsa, o, əsas sinifdən miras alınır və dəyişikliksiz istifadə olunur.

C# nümunəsi:

class BaseClass {
    public virtual void Init() {
        Console.WriteLine("Əsas sinfinin Init-i");
    }
}

class DerivedClass : BaseClass {
    public override void Init() {
        Console.WriteLine("Törəmə sinfinin Init-i");
    }
}

Burada, Init DerivedClass-də BaseClass-ın metodunu üzərinə yazır. Əgər Init DerivedClass-də elan olunmayıbsa, əsas sinfin tətbiqi istifadə olunur.