Junior — Middle
Come si realizza il meccanismo di polimorfismo in Java e come implementarlo nel codice?
sobes.tech AI
Risposta dell'AI
In Java, il polimorfismo si ottiene attraverso l'ereditarietà e la sovrascrittura dei metodi, così come tramite le interfacce. Questo permette agli oggetti di classi diverse di rispondere in modo diverso alle stesse chiamate di metodo.
Esempio di implementazione del polimorfismo:
class Animal {
void sound() {
System.out.println("Suono generico");
}
}
class Dog extends Animal {
@Override
void sound() {
System.out.println("Abbaio");
}
}
class Cat extends Animal {
@Override
void sound() {
System.out.println("Miagolio");
}
}
public class Main {
public static void main(String[] args) {
Animal myDog = new Dog();
Animal myCat = new Cat();
myDog.sound(); // Stampa: Abbaio
myCat.sound(); // Stampa: Miagolio
}
}
Qui, il metodo sound() viene chiamato su oggetti di tipo Animal, ma in realtà viene eseguita l'implementazione corrispondente alla classe reale dell'oggetto (Dog o Cat). Questo è il polimorfismo — un'interfaccia, molte implementazioni.