Pärilikkuse Ja Java-liidese Erinevus

Sisukord:

Pärilikkuse Ja Java-liidese Erinevus
Pärilikkuse Ja Java-liidese Erinevus

Video: Pärilikkuse Ja Java-liidese Erinevus

Video: Pärilikkuse Ja Java-liidese Erinevus
Video: Haruldased haigused – pereelu ja pärilikkus 2024, November
Anonim

Peamine erinevus - pärilikkus vs liides Java-s

Java on Sun Microsystemsi välja töötatud programmeerimiskeel. Java abil saab arendada erinevaid rakendusi. See on mitme paradigmaga keel, mis toetab objektile orienteeritud, struktureeritud jne. Java peamine eelis on see, et see toetab objektile orienteeritud programmeerimist (OOP). Programmeerija saab luua klasse ja objekte. OOP-s on neli sammast. Need on pärimine, polümorfism, abstraktsioon ja kapseldumine. Pärimine ja liidesed on seotud OOP-ga. Peamine erinevus pärimise ja liidese vahel on see, et pärimise eesmärk on saada olemasolevatest klassidest uued klassid ning liideseks abstraktsete klasside ja mitmekordse pärimise rakendamine.

SISU

1. Ülevaade ja peamine erinevus

2. Mis on Pärand Java

3. Mis on liides Java

4. sarnasusi Pärand ja liidese Java

5. Kõrvutivaade võrdlus - Pärand vs Interface Java tabelina

6. Kokkuvõte

Mis on Java-s pärimine?

Pärimisega on võimalik koodi uuesti kasutada. Pärimine aitab olemasoleva klassi atribuute ja meetodeid taaskasutada. Uue klassi tuletamise mehhanismi vana klassi abil nimetatakse pärimiseks. Vana klass on tuntud kui vanemklass või superklass. Tuletatud klassi nimetatakse lasteklassiks või alaklassiks.

Java pärimise süntaks on järgmine.

klassi alamklassi_nimi laiendab superklassinime {

muutuv deklaratsioon;

meetodi deklaratsioon;

}

Pärimiskontseptsiooni saab selgitada järgmise näite abil. Oletame, et on olemas klass nimega A järgmiselt.

avalik klass A {

avalik tühine summa () {

System.out.println (“Summa”);

}

}

Kui soovime lisada uue meetodi olemasolevat klassi muutmata, saame seda teha järgmiselt.

avalik klass B {

public void sub () {

System.out.println (“Sub”);

}

}

Programmeerija saab kasutada pärandit A-klassi summa () kasutamiseks.

B-klass laiendab A-klassi {

public void sub () {

System.out.println (“Sub”);

}

}

Põhifunktsioonis on võimalik luua pärandit kasutades objekt B ja kutsuda sub (), mis kuulub klassi B ja summa (), mis kuulub klassi A.

public staatiline void main (String args) {

B obj = uus B ();

obj.sub ();

obj.sum ();

}

Pärandit on erinevaid. Need on ühekordne, mitmekordne, mitmetasandiline ja hierarhiline pärand. Ühes pärimises on üks baasklass ja üks tuletatud klass. Mitmetasandilises pärimises on kolm klassi, nimelt põhiklass, vaheklass ja tuletatud klass. Vaheklass pärib põhiklassist ja tuletatud klass pärineb vaheklassist. Hierarhilises pärimises on üks baasklass ja palju tuletatud klasse. On olemas spetsiaalne tüüp, mida nimetatakse hübriidpärandiks. See on kombinatsioon kahest või enamast pärandiliigist.

Pärilikkuse ja Java-liidese erinevus
Pärilikkuse ja Java-liidese erinevus

Joonis 01: Pärand

Mitmekordse pärimise korral on palju baasklasse ja üks tuletatud klass. Oletame, et klassid A ja B on põhiklassid. C klass on tuletatud klass. Kui nii A- kui ka B-klassil on sama meetod ja programmeerija kutsub selle meetodi tuletatud klassist, tekitab see mitmetähenduslikkuse probleemi. Kahe klassi pärimine võib põhjustada kompileerimisaja vea. Seetõttu ei toetata Java-s mitut pärimist. Selle probleemi ületamiseks saab kasutada liidest.

Mis on Java liides?

Abstraktsioon on rakendusdetailide peitmine ja kasutajale ainult funktsioonide kuvamine. Abstraktsiooni saab saavutada abstraktsete klasside või liideste abil. Abstraktne meetod on meetod ilma rakenduseta. Klass, millel on vähemalt üks abstraktne meetod, on abstraktne klass. Abstraktse klassi näide on järgmine.

abstraktne klass A {

abstraktne tühine summa ();

}

Oletame, et A ja B on kaks abstraktset klassi. A ja B abstraktsete meetodite rakendamiseks luuakse uus klass C. Siis peaks klass C laiendama nii A kui ka B, kuid Java ei toeta mitmekordset pärimist. Seetõttu peaks kasutama liideseid. Liideseid saab kasutada meetodite deklareerimiseks, kuid meetodeid pole võimalik määratleda. Liideste abil pole võimalik objekti luua. C-klass peaks rakendama kõiki liidese A ja B meetodeid.

liides A {

tühine summa ();

}

liides B {

void sub ();

}

klass C rakendab A, B {

avalik tühine summa () {

System.out.println (“liitmine”);

}

public void sub () {

System.out.println (“lahutamine”);

}

}

Nüüd on põhiprogrammis võimalik luua objekt C ja helistada mõlemale meetodile.

public staatiline void main (String args) {

C obj = uus C ();

obj.sum ();

obj.sub ();

}

Niisiis saab liideseid kasutada mitme pärandi rakendamiseks.

Liideste teine kasutusala on see, et see tagab turvalisuse. Vaadake allolevat koodi.

liides A {

tühine summa ();

}

klass B rakendab A {

avalik tühine summa () {

System.out.println (“liitmine”);

}

public void korruta () {

System.out.println (“Korrutamine”);

}

}

B-objekti loomisel on võimalik mõlemat meetodit kutsuda summaks () ja korrutamiseks (). Kui programmeerija soovib funktsiooni multiply () kasutamist piirata, on see võimalik järgmiselt.

public staatiline void main (String args) {

A obj = uus B ();

obj.sum ();

}

A obj = uus B (); loob objekti. See on A-tüüpi ja mälu on jaotatud B. Võimalik on helistada summale (), kuid korrutamist () ei saa käivitada. See piirang tehakse liideste abil.

Millised on Java pärilikkuse ja liidese sarnasused?

  • Mõlemad mõisted on seotud objektorienteeritud programmeerimisega
  • Mõlemad esindavad IS-A suhet.

Mis vahe on pärilikkuse ja Java-liidese vahel?

Erinev artikkel keskel enne tabelit

Pärilikkus vs Java-liides

Pärimine on OOP-kontseptsioon uute klasside tuletamiseks olemasolevatest klassidest. Liides on OOP-s mehhanism abstraktsiooni ja mitmekordse pärimise rakendamiseks.
Kasutamine
Pärand tagab koodi korduvkasutatavuse. Liidesed võimaldavad abstraktsiooni ja mitmekordset pärimist.

Kokkuvõte - pärilikkus vs liides Java-s

Java on multiparadigma programmeerimiskeel, mis toetab objektorienteeritud programmeerimist. Pärand ja liidesed on seotud objektorienteeritud programmeerimisega. Pärimise ja liidese erinevus seisneb selles, et pärimise eesmärk on saada olemasolevatest klassidest uued klassid ja liidesed on abstraktsete klasside ja mitmekordse pärimise rakendamine.

Laadige Java-versioonis alla Pärand vs liides PDF-versioon

Selle artikli PDF-versiooni saate alla laadida ja kasutada võrguühenduseta eesmärkidel, nagu tsiteeritud. Laadige siit alla PDF-versioon. Pärilikkuse ja Java-liidese erinevus

Soovitatav: