Junior
Šta je polimorfizam u programiranju?
sobes.tech АИ
Одговор од АИ
Polimorfizam je sposobnost objekata različitih klasa da reaguju na iste poruke (pozive metoda) na različite načine.
Jednostavno rečeno, ista metoda može da se ponaša drugačije u zavisnosti od objekta koji je poziva. To se postiže putem nasleđivanja i prepisivanja metoda, kao i korišćenjem interfejsa.
Primer u Swift:
protocol Animal {
func makeSound()
}
class Dog: Animal {
func makeSound() {
print("Gau")
}
class Cat: Animal {
func makeSound() {
print("Mijau")
}
}
func playSound(animal: Animal) {
animal.makeSound()
}
let dog = Dog()
let cat = Cat()
playSound(animal: dog) // Ispisaće: Gau
playSound(animal: cat) // Ispisaće: Mijau
Ovde, funkcija playSound prihvata objekat tipa Animal, ali u zavisnosti od konkretne klase (Dog ili Cat), poziva se odgovarajuća implementacija metode makeSound.