Junior — Middle
Meg tudná magyarázni az objektumorientált programozásban a polimorfizmus fogalmát?
sobes.tech MI
Válasz az MI-től
Az objektumorientált programozásban a polimorfizmus az a képesség, hogy különböző osztályok objektumai ugyanarra az üzenetre (metódushívásra) különböző módon reagáljanak. Ez lehetővé teszi, hogy egyetlen interfészt használjunk különböző típusú objektumok kezelésére.
Java példával:
class Animal {
void sound() {
System.out.println("Valamilyen hang");
}
}
class Dog extends Animal {
@Override
void sound() {
System.out.println("ugat");
}
}
class Cat extends Animal {
@Override
void sound() {
System.out.println("miau");
}
}
public class Main {
public static void main(String[] args) {
Animal a1 = new Dog();
Animal a2 = new Cat();
a1.sound(); // Kiírja: ugat
a2.sound(); // Kiírja: miau
}
}
Itt a sound() metódus Animal típusú objektumokon hívódik meg, de a viselkedés a konkrét alosztálytól függ — ez a polimorfizmus példája.