Junior — Middle
Ինչ փոփոխություններ պետք է կատարվեն դասի սահմանման մեջ՝ ապահովելու նրա հնարավորությունը պոլիմորֆիզմի օգտագործման համար:
sobes.tech AI
Պատասխան AI-ից
Java-յում պոլիմորֆիզմի օգտագործումը ապահովելու համար անհրաժեշտ է.
- Մեթոդները, որոնք ենթակա են վերագրանցման, պետք է չլինեն ստատիկ կամ ֆինալ:
- Օգտագործել
overrideբանալի բառը ենթակլասներում՝ բազային դասի մեթոդները վերագրանցելու համար: - Բազային դասում մեթոդները պետք է հայտարարվեն որպես
publicկամprotected(որպեսզի ենթակլասները կարողանան դրանք վերագրանցել):
Օրինակ՝
class Animal {
public void sound() {
System.out.println("Որոշ ձայն");
}
}
class Dog extends Animal {
@Override
public void sound() {
System.out.println("Շունչ");
}
}
// Պոլիմորֆիզմի օգտագործում
Animal animal = new Dog();
animal.sound(); // Տպում է "Շունչ"
Այսպիսով, պոլիմորֆիզմի աջակցելու համար մեթոդները պետք է լինեն վիրտուալ (Java-յում բոլոր ոչ ստատիկ մեթոդները ըստ նախնական կարգի վիրտուալ են): Հիմնականը՝ չանել դրանք static կամ final։