Junior
Qachon metod override qilingan deb hisoblanadi?
sobes.tech AI
AIdan javob
Obyektiv orientatsiyali dasturlashda metod quyidagi holatlarda qayta yozilgan (overriding) hisoblanadi:
- U voris sinfda, ota sinfdagi metod bilan bir xil nom, qaytish turi va parametrlar ro'yxati (imzo) bilan ta'riflangan.
- Ota sinf metod
privateemas. - Voris sinfdagi metod ota sinfdagi metoddan qat'iyroq kirish modifikatoriga ega emas.
- Xatoliklar holatida, qayta yozilgan metod tekshiriladigan xatoliklarni ([checked exceptions]) e'lon qilishi mumkin emas, ular qayta yozilgan metodda e'lon qilinganlardan kengroq bo'lishi mumkin emas.
Qayta yozilgan metod chaqirilganda, voris sinf ob'ektida, voris sinf metodining versiyasi bajariladi. Bu, bajarilish vaqtida polimorfizm misolidir.
Java misoli:
// java
class Animal {
public void makeSound() {
System.out.println("Umumiy hayvon ovozi");
}
}
class Dog extends Animal {
@Override // @Override annotatsiyasi, metodning qayta yozilganligini tasdiqlaydi
public void makeSound() {
System.out.println("Hov hov");
}
}
class Cat extends Animal {
@Override
public void makeSound() {
System.out.println("Miyov");
}
}