Öröklés és polimorfizmus

Öröklés Java-ban

Az öröklődés az objektum-orientált programozás fontos jellemzője a Java-ban. Lehetővé teszi, hogy az egyik osztály (gyermekosztály) örökölje egy másik osztály (szülő osztály) mezőit és módszereit. Például azt szeretnénk, ha a kutya gyermekosztály az általánosabb szülő osztályba tartozó állat tulajdonságait rejtené magában .

polimorfizmus

A gyermekosztály Java-ban történő meghatározásakor a kiterjesztés kulcsszót használjuk, hogy örököljön egy szülő osztálytól.

Main () metódus a Java-ban

Egyszerű Java programokban csak egy osztállyal és egy fájllal dolgozhat. Amint azonban a programjai összetettebbé válnak, több osztállyal fog dolgozni, amelyek mindegyikéhez saját fájl szükséges. A Java csomagban található fájlok közül csak egynek van szüksége a main () metódusra, és ez az a fájl fog futtatni a csomagban.

Tegyük fel például, hogy a Java csomagunkban két fájl található két különböző osztály számára:

  • Alak, a szülő osztály.
  • Tér, a gyermek osztály.

Ha csak a Shape osztályunkat tartalmazó Java fájl rendelkezik main () metódussal, akkor ezt a fájlt futtatja a Java csomagunk.

super () Java-ban

A Java-ban a gyermekosztály örökli a szülő mezőit és metódusait, vagyis örökli a szülő konstruktorát is. Néha érdemes módosítani a konstruktort, ebben az esetben használhatjuk a super () metódust, amely úgy működik, mint a szülő konstruktor a gyermekosztály konstruktorán belül.

Alternatív megoldásként teljesen felülírhatjuk a szülő osztály konstruktorát is, ha új konstruktort írunk a gyermek osztályba.

Védett és végső kulcsszavak a Java-ban

Ha Java osztályokat hozunk létre, néha érdemes ellenőrizni a gyermekosztály hozzáférését a szülő osztály tagjaihoz. Ehhez használhatjuk a védett és a végső kulcsszavakat.

A védett a szülőosztály tagját hozzáférhetővé teszi gyermekosztályaihoz, a saját csomagjában lévő fájlokhoz és ezen osztály alosztályaihoz egy másik csomagban.

A végleges hozzáadása a szülő osztály metódusának hozzáférés-módosítója előtt azt teszi lehetővé, hogy egyetlen gyermek osztály sem módosíthatja ezt a módszert - ez megváltoztathatatlan.

Polimorfizmus Java-ban

A Java magában foglalja a polimorfizmus objektum-orientált programozási elvét.

A polimorfizmus lehetővé teszi a gyermekosztály számára, hogy megossza szülő osztályának információit és viselkedését, miközben beépíti saját funkcióit is. Ez lehetővé teszi az egyszerűsített szintaxis és a csökkent kognitív túlterhelés előnyeit a fejlesztők számára.

Módszer felülírása Java-ban

A Java-ban könnyen felülírhatjuk a szülő osztály metódusait egy gyermek osztályban. A módszer felülírása akkor hasznos, ha azt akarjuk, hogy gyermekosztályunk metódusának ugyanaz a neve legyen, mint egy szülő osztály módszerének, de kicsit másképp viselkedünk.

Annak érdekében, hogy felülírjuk a szülő osztály módszerét egy gyermek osztályban, meg kell győződnünk arról, hogy a gyermek osztály módszer a következőket tartalmazza-e a szülő osztály módszerével:

  • Módszer neve
  • Visszatérés típusa
  • A paraméterek száma és típusa

Ezenkívül fel kell vennünk a @Override kulcsszót gyermekosztályunk metódusának fölé, hogy jelezzük a fordítónak, hogy felül akarunk írni egy metódust a szülő osztályban.