Az öröklés áttekintése a Java-ban

Más programozási nyelvektől, például a C-től eltérően, a Java olyan mechanizmust kínál, amellyel az egyik osztály tagjait és módszereit egy másik osztály örökli. Ezt a folyamatot Java-ban örökségnek hívják. Az osztályból való öröklés érdekében az 'extens' kulcsszót kell használni. A Java öröklődése lehetővé teszi a kód újrafelhasználhatóságát, így az osztálynak csak az egyedi jellemzőket kell megírnia, és a kód többi része kibővíthető a másik osztálytól. A másik osztálytól örökölt osztályt alosztálynak vagy gyermekosztálynak, az öröklődő osztályt szülőosztálynak vagy szuperosztálynak nevezzük. A szintaxist, a típusokat és az öröklés megvalósítását a következő szakaszokban tárgyaljuk.

Az öröklés típusai a Java-ban

Az öröklődés IS-A kapcsolatot jelent, amelyet más néven szülő-gyermek kapcsolatnak neveznek. A szülőt és a gyermeket már említik a bevezető részben.

Mielőtt a java-ban levő örökség típusához térnénk, először nézzük meg az öröklés szintaxisát.

Szintaxis:

class apple extends fruit
(
//methods and fields
)

Itt az alma az alosztály, a gyümölcs a szülőosztály. Ez azt jelenti, hogy az almának van bizonyos egyedi tulajdonságai, valamint a gyümölcs tulajdonságai is.

A Java-ban 4 különféle típusú öröklés létezik.

  • Egyetlen öröklés
  • Többszintű öröklés
  • Hierarchikus öröklés
  • Több öröklés (interfészek segítségével)

Most nézzük meg mindegyiket részletesen.

1. Egyetlen öröklés

Olyan osztály, amely csak egy osztályt fed le. A következő példában az osztályalma kiterjeszti az osztály gyümölcsét.

azaz a gyümölcs a szuper osztály, az Apple az alosztály, amely kiterjeszti a gyümölcs osztály tulajdonságait és viselkedését.

Az alábbiakban bemutatjuk az egyetlen öröklést Java-ban.

Kód:

//Java program to demonstrate Single Inheritance
//parent class
class fruit (
public void taste()
(
System.out.println("Fruits are sweet");
)
)
//child class of fruit
class apple extends fruit
(
public void shape()
(
System.out.println("Apple is round");
)
)
public class InheritanceExample
(
public static void main(String() args) (
apple fr = new apple(); //object of child class
fr.taste(); //call method of parent class
fr.shape(); //call method of child class
)
)

Kimenet:

2. Többszintű öröklés

Az ilyen típusú öröklésnél az osztály kibővül egy másik osztályból, és a származtatott osztály más osztályok alaposztályaként működik.

Például az ábrán a négykerekű osztály a szülőosztály, az autó a származtatott négykerekű osztály. Ugyanakkor az osztályautó lehet a Maruti osztály alap osztálya.

Kód:

//Java program to demonstrate Multiple Inheritance
//parent class
class fourwheeler (
public void wheels()
(
System.out.println("I have 4 wheels");
)
)
//child class of fourwheeler and parent of maruti
class car extends fourwheeler
(
public void type()
(
System.out.println("I'm a car");
)
)
//child class of car class
class maruti extends car
(
public void comp()
(
System.out.println("I'm maruti");
)
)
public class InheritanceExample
(
public static void main(String() args) (
maruti fr = new maruti(); //object of child class
fr.wheels();
fr.type();
fr.comp();
)
)

Kimenet:

3. Hierarchikus öröklés

A hierarchikus öröklés során az alaposztálynak egynél több gyermekosztálya van, ami azt jelenti, hogy egy osztály tulajdonságait különböző osztályok szerezik meg.

Például egy osztályú járművek alkategóriái vannak autók, kerékpárok, robogók.

Kód:

//Java program to demonstrate Hierarchical Inheritance
//parent class
class vehicle (
public void wheels()
(
System.out.println("I have wheels");
)
)
//first child class of vehicle class
class bike extends vehicle
(
public void countwl()
(
System.out.println("I am a bike and has 2 wheels");
)
)
//second child class of vehicle class
class car extends vehicle
(
public void countwlc()
(
System.out.println("I am a car and has 4 wheels");
)
)
//third child class of vehicle class
class scooter extends vehicle
(
public void countwls()
(
System.out.println("I am a scooter and has 2 wheels");
)
)
public class InheritanceExample
(
public static void main(String() args) (
scooter sc = new scooter(); //object of scooter class
sc.wheels();
sc.countwls();
car c = new car(); //object of car class
c.wheels();
c.countwlc();
bike b= new bike();//object of bike class
b.wheels();
b.countwl();
)
)

Kimenet:

4. Több öröklés

A java többszörös öröklése olyan öröklés típusa, amelyben az osztálynak egynél több szülőosztálya van.

Például a C osztály megszerzi mind az A, mind a B osztály tulajdonságait.

A Java-ban azonban a többszörös öröklés csak interfészek használatával érhető el.

Tegyük fel, hogy a többszörös öröklést más öröklésfajtákhoz hasonlóan hajtják végre, a fordítási idő hiba az alábbiak szerint fordulhat elő.

Kód:

//Java program to demonstrate multiple Inheritance
//parent class
class A
(
public void hh()
(
System.out.println("A is working");
)
)
class B
(
public void hh()
(
System.out.println("B is working");
)
)
class C extends A, B
(
//code for class c
)
public class InheritanceExample
(
public static void main(String() args) (
C sc = new C(); //object of C class
C.hh();
)
)

Itt a kimenet nem jelenik meg, mivel fordítási idő hibát tartalmaz.

Az öröklés fontossága a Java-ban

  • Kód újrafelhasználhatóság: Az öröklődés segít csökkenteni a kód átírását. Vagyis a kódot más osztályok is felhasználhatják, és a gyermekosztálynak csak saját egyedi tulajdonságait kell írnia. Ez csökkenti a kód időigényét és összetettségét.
  • A módszer felülbírálása esetén: A szülőosztályban már létező módszert a gyermekosztály deklarálja, majd úgy ismerték, mint a módszer felülírását.
Megjegyzés: Tegyük fel, hogy ha egy osztályt nem szabad újra felhasználni, akkor a végső kulcsszó használható.

Szintaxis:

final class A
(
. . .
)
Class B extends A
(
. . .
)

Ebben az esetben hiba keletkezik, amely azt mondja: „Nem örökölhetem az A végsőből”.

Következtetés

Az öröklés a Java-ban olyan tulajdonság, amellyel egy osztály tulajdonságait és viselkedését egy másik osztály megszerezte a kód újrafelhasználhatóságának biztosítása érdekében. Különböző típusú öröklődések vannak a Java-ban, mint például az egyetlen öröklés, a többszintű öröklés, a hierarchikus öröklés és a többszörös öröklés a Java-ban. Ebben a dokumentumban az öröklés számos fontos szempontja szerepel.

Ajánlott cikkek

Ez egy útmutató a Java örökléshez. Itt megvitatjuk a java-ban szereplő öröklés fontosságát és különféle típusait, a szintaxist, a példákat és a kód megvalósítását. A következő cikkeket is megnézheti további információkért -

  1. JScrollPane Java-ban
  2. Ülések a PHP-ben
  3. Rendezés Java-ban
  4. Mi a Java szemétgyűjtő?
  5. Java telepítési eszközök
  6. A Java alapon érvényes
  7. Öröklés a PHP-ben

Kategória: