Öröklés Java OOP-kban

Mi példa az öröklés?

Az öröklés olyan mechanizmus, amelyben az egyik osztály megszerzi egy másik osztály tulajdonságát. Például a gyermek örökölje szülei tulajdonságait. Örökléssel újból felhasználhatjuk a meglévő osztály mezőit és metódusait. Ezért az öröklés megkönnyíti az újrafelhasználhatóságot, és az OOP-k fontos fogalma.

Ebben az oktatóanyagban megismerheti-

  • Öröklés típusait
  • Öröklés Java-ban
  • Java Öröklési példa
  • Szuper kulcsszó
  • Az öröklődés megismerése az OOP-ban példával

Öröklés típusai

Vannak Különböző típusú öröklődés a Java-ban:

Egyetlen öröklés:

Az Egyetlen öröklésben az egyik osztály kiterjeszti a másik osztályt (csak egy osztály).

Egyetlen öröklődés

A fenti diagramban a B osztály csak az A osztályt terjeszti ki. szuper osztály, a B osztály pedig egy alosztály.

Többszörös öröklés:

Többszörös öröklés esetén egy osztály tovább bővül mint egy osztály. A Java nem támogatja a többszörös öröklést.

Többszörös öröklés

A fenti ábra szerint a C osztály kiterjeszti mind az A, mind a B osztályt.

Többszintű öröklés:

A többszintű öröklésben egy osztály örökölhet egy származtatott osztályból. Ezért a levezetett osztály lesz az új osztály alaposztálya.

Többszintű öröklés

Amint az a diagramon látható, a C osztály B alosztálya, B pedig egy osztályú A. osztályba tartozik.

Hierarchikus öröklődés:

A hierarchikus öröklésben egy osztályt sok alosztály örököl.

Hierarchikus öröklés

A fenti példa szerint a B, C és D osztály ugyanazt örökli A. osztály.

Hibrid öröklés:

A hibrid öröklődés az egyszeres és többszörös öröklés kombinációja.

Hibrid öröklődés

A fenti példa szerint az A osztály összes nyilvános és védett tagja öröklődik a D osztályba, először a B osztályon keresztül, másodszor pedig a C osztályon keresztül.

Megjegyzés: A Java nem támogatja a hibrid / többszörös öröklődést

Öröklés Java-ban

A JAVA ÖRÖKLÉS olyan mechanizmus, amelyben az egyik osztály megszerzi egy másik osztály tulajdonságát. A Java-ban, amikor két osztály között “Is-A” kapcsolat van, akkor az Öröklődést használjuk. A szülő osztályt szuper osztály és az örökölt osztályt alosztálynak hívják. A extends kulcsszót az alosztály használja a szuper osztály jellemzőinek öröklésére.

Öröklés fontos, mivel a kód újrafelhasználhatóságához vezet.

Java öröklődési szintaxis:

class subClass extends superClass { //methods and fields } 

Java öröklődés E xample

Szuper kulcsszó

A szuper kulcsszó hasonló ehhez a “ehhez” kulcsszóhoz.

A super kulcsszó felhasználható a szülőosztály bármely adattagjához vagy metódusához.

A szuper kulcsszó használható változó, módszer és konstruktor szintjén.

Szintaxis:

super.<method-name>();

Az öröklődés megismerése az OOP-kban a példával

Vegye figyelembe az előző példában szereplő banki alkalmazást .

Állítólag két különböző számlatípust nyitunk meg, az egyiket a mentéshez, a másikat pedig az ellenőrzéshez (más néven jelenlegi).

Hasonlítsuk össze és tanulmányozzuk, hogyan lehet strukturált és objektum-orientált programozási szempontból megközelíteni a kódolást. Strukturális megközelítés: A strukturált programozásban két függvényt fogunk létrehozni –

  1. az egyiket a visszavonáshoz
  2. a másikat a befizetési művelethez.

Mivel a Ezeknek a függvényeknek a fiókokon belüli működése ugyanaz marad.

OOP megközelítése: Miközben az OOPs programozási megközelítést használja. Két osztályt hoznánk létre.

  • mindegyik rendelkezik a befizetési és visszavételi funkciók végrehajtásával.
  • Ez felesleges munkát igényel.

Szoftver módosítási kérelme

Most megváltozik a követelményspecifikáció valamire, ami annyira elterjedt a szoftveriparban. Önnek feltételezhetően hozzá kell adnia a funkcionalitáshoz tartozó privát bankszámlát a folyószámlahitel eszközzel. Háttérként a folyószámlahitel egy olyan eszköz, ahol a számlán rendelkezésre álló egyenlegnél nagyobb összeget vehet fel.

Strukturális megközelítés: A funkcionális megközelítés használatával módosítanom kell a visszavonási függvényemet, amelyet már teszteltek és alapszintűek. És adjon hozzá egy olyan módszert, mint az alábbiakban, amely gondoskodik az új követelményekről.

OOP megközelítése: Az OOP megközelítés használatával egyszerűen meg kell írjon egy új osztályt a visszavonási funkció egyedi megvalósításával. Soha nem nyúltunk a tesztelt kódrészlethez.

Újabb változtatási kérelem

Mi van, ha a követelmény megváltozik további? Szeretne hozzáadni hitelkártya-számlát saját egyedi betétigényével.

Strukturális megközelítés: A strukturális megközelítés használatával módosítania kell a betét kódját újra.

OOP megközelítése: De objektumorientált megközelítést használva csak hozzon létre egy új osztályt a betétmódszer egyedülálló megvalósításával (az alábbi képen piros színnel kiemelve).

Bár a strukturális programozás kezdetben könnyű megközelítésnek tűnik, az OOP hosszú távon nyer.

Az öröklés előnye az OOP-kban

De lehet azzal érvelnek, hogy minden osztályban megismétlik a kódrészleteket.

Ennek kiküszöbölése érdekében hozz létre egy szülői osztályt, mondd a “számla” szót, és hajtsd végre ugyanazt a befizetési és felvételi funkciót. És tegye a gyermekosztályokat örökölt “számla” osztályba. Annak érdekében, hogy hozzáférhessenek a számlaosztályba tartozó visszavonási és befizetési funkciókhoz.

A funkciókat nem szükséges egyedileg végrehajtani. Ez az öröklődés a java-ban. .

Write a Comment

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük