Sobes.tech
Junior — Middle

როგორ აღწევს პოლიმორფიზმის მექანიზმი Java-ში და როგორ განახორციელოთ იგი კოდში?

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 myDog = new Dog();
        Animal myCat = new Cat();

        myDog.sound(); // გამოდის: ხმობა
        myCat.sound(); // გამოდის: მიუ
    }
}

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