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;
}
}