Sobes.tech
Junior

Java-da konstruktorları yenidən yaza bilərikmi?

sobes.tech Süni İntellekt

AI-dan cavab

Yox, Java-da konstruktorlar (build) üzərinə yazılmır (overriding). Üzərinə yazma, alt sinfin metodlarının, ana sinfin metodları ilə eyni imzaya (ad, dönüş tipi və parametr siyahısı) malik olması ilə əlaqəlidir.

Əvəzinə, Java-da konstruktorlar üçün yükləmə (overloading) istifadə olunur. Bu, eyni sinifdə eyni adda, lakin fərqli parametr siyahısına (say, tiplər və ya sıra) malik bir neçə konstruktor ola biləcəyini göstərir.

Alt sinif, ana sinfin konstruktorlarını super(...) açar sözü ilə çağıra bilər.

Konstruktorların yüklənməsi nümunəsi:

class MyClass {
    int value;
    String name;

    // Standart konstruktor
    public MyClass() {
        this.value = 0;
        this.name = "default";
        // Digər konstruktoru this() ilə çağırmaq
        this(0, "default"); 
    }

    // Bir parametrli yüklənmiş konstruktor
    public MyClass(int value) {
        this.value = value;
        this.name = "default";
    }

    // İki parametrli yüklənmiş konstruktor
    public MyClass(int value, String name) {
        this.value = value;
        this.name = name;
    }
}