Junior — Middle
Тавзеҳ диҳед дар бораи консепсияи полиморфизм дар барномасозии объектӣ ва чӣ гуна дар код амалӣ мешавад.
sobes.tech AI
Ҷавоб аз AI
Полиформизм дар барномаҳои объектӣ-ҳар як қобилияти объектҳои синфҳои гуногун барои вокуниш ба паёмҳои якхела (даъвати методҳо) ба таври гуногун мебошад. Ин имкон медиҳад, ки барои кор бо намудҳои гуногуни объектҳо интерфейси ягона истифода шавад.
Дар Java, полиморфизм тавассути мерос ва ивазкунии методҳо амалӣ карда мешавад. Масалан, синфи асосӣ методро эълон мекунад, ва синфҳои зерӣ онро ба тарзи худ иҷро мекунанд.
Масалан:
class Animal {
void sound() {
System.out.println("Як садо");
}
}
class Dog extends Animal {
@Override
void sound() {
System.out.println("Ҳаво кардан");
}
}
class Cat extends Animal {
@Override
void sound() {
System.out.println("Мяу");
}
}
public class Main {
public static void main(String[] args) {
Animal a1 = new Dog();
Animal a2 = new Cat();
a1.sound(); // Натиҷа "Ҳаво кардан"
a2.sound(); // Натиҷа "Мяу"
}
}
Ин ҷо, тағйирёбандаи синфи Animal метавонад ба объектҳои гуногуни синфҳои зерӣ ишора кунад, ва даъвати метод sound() вобаста ба навъи воқеии объект иҷро мешавад — ин полиморфизм аст.