Sobes.tech
Junior — Middle

Kuidas saavutatakse Java-s polümorfismi mehhanism ja kuidas seda koodis rakendada?

sobes.tech AI

Vastus AI-lt

Java keeles saavutatakse polümorfism pärimise ja meetodite ülekirjutamise ning ka liideste kaudu. See võimaldab erinevatel klassidel olevatel objektidel reageerida samade meetodikutsungite puhul erinevalt.

Polümorfismi rakendamise näide:

class Animal {
    void sound() {
        System.out.println("Mingi heli");
    }
}

class Dog extends Animal {
    @Override
    void sound() {
        System.out.println("Haugumine");
    }
}

class Cat extends Animal {
    @Override
    void sound() {
        System.out.println("Miau");
    }
}

public class Main {
    public static void main(String[] args) {
        Animal myDog = new Dog();
        Animal myCat = new Cat();

        myDog.sound(); // Väljund: Haugumine
        myCat.sound(); // Väljund: Miau
    }
}

Siin kutsutakse sound() meetodit Animal tüüpi objektidel, kuid tegelikult täidetakse objekti tegeliku klassi vastav implementatsioon (Dog või Cat). See on polümorfism — üks liides, palju teostusi.