Junior
Программалоодо полиморфизм деген эмне?
sobes.tech AI
AIден жооп
Полиформизм — бул ар башка класстардын объекттери бирдей билдирүүлөргө (метод чакырууларга) ар башка жооп кайтаруу жөндөмдүүлүгү.
Жөнөкөй айтканда, бир жана ошол эле метод объектке жараша ар башка иштөө мүмкүнчүлүгүнө ээ. Бул мурас алуу жана методдорду кайра аныктоо аркылуу, ошондой эле интерфейстерди колдонуу аркылуу жетишилет.
Swiftте мисал:
protocol Animal {
func makeSound()
}
class Dog: Animal {
func makeSound() {
print("Гав")
}
}
class Cat: Animal {
func makeSound() {
print("Мяу")
}
}
func playSound(animal: Animal) {
animal.makeSound()
}
let dog = Dog()
let cat = Cat()
playSound(animal: dog) // Чыгуу: Гав
playSound(animal: cat) // Чыгуу: Мяу
Бул жерде, playSound функциясы Animal түрүндөгү объектти кабыл алат, бирок конкреттүү класс (Dog же Cat) боюнча, тиешелүү makeSound ишке ашырылышы чакырылат.