Sobes.tech
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։