Sobes.tech
Junior — Middle

მემკვიდრეობის და ძირითადი კლასის მეთოდების ან კონსტრუქტორების გამოძახების კონტექსტში super ოპერატორის დანიშნულება რა არის?

sobes.tech AI

პასუხი AI-სგან

Java-ში super ოპერატორი გამოიყენება ძირითადი (მშობელი) კლასი მეთოდების ან კონსტრუქტორების წვდომისთვის ქვესკლასიდან.

super-ის ძირითადი დანიშნულებები:

  • ძირითადი კლასის კონსტრუქტორის გამოძახება ქვესკლასის კონსტრუქტორიდან, რათა ინიციალიზდეს ობიექტის ის ნაწილი, რომელიც განსაზღვრულია მშობელ კლასში.
  • გადაწერილი მეთოდის გამოძახება ძირითადი კლასიდან, თუ ქვესკლასში საჭიროა ქცევის დამატება ან შეცვლა, ამავდროულად შენარჩუნდეს მშობლის ნაწილობრივი ლოგიკა.

კონსტრუქტორის გამოყენების მაგალითი:

class Animal {
    String name;
    Animal(String name) {
        this.name = name;
    }
}

class Dog extends Animal {
    Dog(String name) {
        super(name); // გამოძახება Animal-ის კონსტრუქტორის
    }
}

მეთოდის გამოძახების მაგალითი მშობელი კლასი:

class Animal {
    void sound() {
        System.out.println("რაღაც ხმა");
    }
}

class Dog extends Animal {
    @Override
    void sound() {
        super.sound(); // გამოძახება მშობელი კლასი მეთოდის
        System.out.println("ბრახუნი");
    }
}

ამ გზით, super ეხმარება მემკვიდრეობას მართვაში და მშობელი კლასის კოდის გადამეორებაში.