Sobes.tech
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(); // გამოტანა: მიუ
    }
}

აქ, sound() მეთოდი იძახება Animal ტიპის ობიექტებზე, მაგრამ ქცევა დამოკიდებულია კონკრეტულ ქვესკლასზე — ეს არის პოლიმორფიზმის მაგალითი.