Sobes.tech
Junior

Hogyan használja az alosztály a szülő osztály funkcionalitását?

sobes.tech MI

Válasz az MI-től

Öröklődés útján: az leszármazott osztály megkapja a szülő osztály nyilvános és védett tagjait.

  • Közvetlen hozzáférés: A szülő nyilvános és védett mezőihez és metódusaihoz közvetlenül hozzáférhetünk a nevükön belül a leszármazott osztályban.
  • super kulcsszó: Használható a szülő konstruktorának meghívására vagy a felülírt szülői metódusok/mezők elérésére, amikor a leszármazott osztályban ugyanaz a nevű tagok vannak.
  • Felülírás (overriding): A szülő (nem final) metódusai felülírhatók a leszármazott osztályban, megváltoztatva viselkedésüket.
// Szülő osztály példája
class Parent {
    protected int parentValue;

    public Parent(int value) {
        this.parentValue = value;
    }

    public void displayParentValue() {
        System.out.println("Szülő értéke: " + parentValue);
    }

    public final void cannotBeOverridden() {
        System.out.println("Ez a metódus nem írható felül.");
    }
}

// Leszármazott osztály példája
class Child extends Parent {
    private int childValue;

    public Child(int parentValue, int childValue) {
        super(parentValue); // Szülő konstruktorának hívása
        this.childValue = childValue;
    }

    // Szülő metódus felülírása
    @Override
    public void displayParentValue() {
        System.out.println("Felülírt szülő érték: " + parentValue); // Hozzáférés a védett szülői mezőhöz
    }

    public void displayChildValue() {
        System.out.println("Gyermek értéke: " + childValue);
    }

    public void callParentMethod() {
        super.displayParentValue(); // Szülő metódusának hívása a super segítségével
    }
}