Sobes.tech
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 մեթոդի իրականացմանը։