Razlika med dedovanjem in vmesnikom v Javi

Ključna razlika - dedovanje vs vmesnik na Javi
 

Java je programski jezik, ki ga je razvil Sun Microsystems. Java se lahko uporablja za razvoj različnih aplikacij. Je jezik z več paradigmi, ki podpira objektno usmerjeno, strukturirano itd. Glavna prednost Jave je, da podpira objektno usmerjeno programiranje (OOP). Programer lahko ustvari razrede in predmete. V OOP so štirje stebri. So dedovanje, polimorfizem, abstrakcija in enkapsulacija. Dediščina in vmesniki so povezani z OOP. The ključna razlika med dedovanjem in vmesnikom je to dedovanje je pridobitev novih razredov iz obstoječih razredov, vmesnik pa za izvajanje abstraktnih razredov in večkratnega dedovanja.

VSEBINA

1. Pregled in ključne razlike
2. Kaj je Dedovanje v Javi
3. Kaj je vmesnik v Javi
4. Podobnosti med dedovanjem in vmesnikom v Javi
5. Primerjava ob strani - Dedovanje in vmesnik v Javi v tabeli
6. Povzetek

Kaj je Dedovanje v Javi?

Z dedovanjem lahko dosežete ponovno uporabnost kode. Dedovanje pomaga ponovno uporabiti atribute in metode obstoječega razreda. Mehanizem pridobivanja novega razreda z uporabo starega razreda se imenuje dedovanje. Stari razred je znan kot nadrejeni razred ali super razred. Izvedeni razred se imenuje nadrejeni razred ali podrazred.

Sintaksa Java dedovanja je naslednja.

razred subclass_name podaljša ime superklasa_

spremenljiva deklaracija;

deklaracija metode;

Koncept dedovanja je mogoče razložiti z naslednjim primerom. Predpostavimo, da obstaja naslednji razred, imenovan A.

javni razred A

javna nična vsota ()

System.out.println ("Vsota");

Če želimo dodati novo metodo brez spreminjanja obstoječega razreda, lahko to storimo na naslednji način.

javni razred B

javno neveljavno sub ()

System.out.println ("Pod");

Programer lahko dediščino uporablja za vsoto razreda A ().

javni razred B razširja razred A

javno neveljavno sub ()

System.out.println ("Pod");

V glavni funkciji je mogoče ustvariti objekt B in poklicati sub (), ki spada v razred B in vsoto (), ki pripada razredu A z dedovanjem.

javni statični void main (String [] args)

B obj = nov B ();

obj.sub ();

obj.sum ();

Obstajajo različne vrste dedovanja. So enotno dedovanje, večkratno dedovanje, večstopenjsko dedovanje in hierarhično dedovanje. V enotno dedovanje, obstaja en osnovni razred in en izvedeni razred. V večstopenjsko dedovanje, obstajajo trije razredi, in sicer osnovni razred, vmesni razred in izvedeni razred. Vmesni razred podeduje od osnovnega razreda, izpeljani razred pa podeduje od vmesnega razreda. V hierarhično dedovanje, obstaja en osnovni razred in veliko izvedenih razredov. Obstaja posebna vrsta, znana kot Hibridno dedovanje. Gre za kombinacijo dveh ali več vrst dedovanja.

Slika 01: Dedovanje

V Večkratno dedovanje obstaja veliko osnovnih razredov in en izvedeni razred. Predpostavimo, da sta razreda A in B osnovna razreda. Razred C je izpeljani razred. Če imata razreda A in B isto metodo in programer pokliče to metodo iz izpeljanega razreda, bo to povzročilo nejasnost. Dedovanje dveh razredov lahko povzroči napako v času prevajanja. Zato večkratno dedovanje v Javi ni podprto. Za premagovanje te težave lahko uporabite vmesnik.

Kaj je vmesnik v Javi?

Abstrakcija je postopek skrivanja podrobnosti o izvajanju in prikazovanju uporabnika samo funkcionalnosti. Abstrakcije je mogoče doseči z abstraktnimi razredi ali vmesniki. Abstraktna metoda je metoda brez izvedbe. Razred z vsaj eno abstraktno metodo je abstraktni razred. Primer abstraktnega razreda je naslednji.

abstraktni razred A

abstraktna vsota ničnosti ();

Predpostavimo, da obstajata dva abstraktna razreda kot A in B. Za izvajanje abstraktnih metod A in B je ustvarjen nov razred C. Nato bi moral razred C razširiti A in B., vendar večkratno dedovanje na Javi ni podprto. Zato bi morali uporabljati vmesnike. Za razglasitev metod se lahko uporabljajo vmesniki, vendar ni mogoče določiti metod. Objekta ni mogoče ustvariti z vmesniki. Razred C mora izvajati vse metode v vmesnikih A in B.

vmesnik A

nična vsota ();

vmesnik B

neveljaven sub ();

izvedbe razreda C A, B

javna nična vsota ()

System.out.println ("Povzemanje");

javno neveljavno sub ()

System.out.println ("Odštevanje");

Zdaj je v glavnem programu mogoče ustvariti objekt C in poklicati obe metodi.

javni statični void main (String [] args)

C obj = nov C ();

obj.sum ();

obj.sub ();

Torej, vmesniki se lahko uporabljajo za izvajanje več dedovanja.

Druga uporaba vmesnikov je, da zagotavlja varnost. Glej spodnjo kodo.

vmesnik A

nična vsota ();

izvedba razreda B A

javna nična vsota ()

System.out.println ("Povzemanje");

javno neveljavno množenje ()

System.out.println ("Množenje");

Pri ustvarjanju predmeta B je mogoče obe metodi poklicati sum () in pomnožiti (). Če želi programer omejiti uporabo funkcije množenja (), je možno na naslednji način.

javni statični void main (String [] args)

A obj = nov B ();

obj.sum ();

A obj = nov B (); bo ustvaril predmet. Je tipa A in pomnilnik je dodeljen kot B. Mogoče je poklicati sum (), vendar ga ni mogoče izvesti pomnožiti (). Ta omejitev se izvede z vmesniki.

Kakšne so podobnosti med dedovanjem in vmesnikom v Javi?

  • Oba koncepta sta povezana z objektno usmerjenim programiranjem
  • Oba predstavljata odnos IS-A.

Kakšna je razlika med dedovanjem in vmesnikom v Javi?

Dedovanje in vmesnik na Javi

Dedovanje je koncept OOP za pridobivanje novih razredov iz obstoječih razredov. Vmesnik je mehanizem v OOP za izvajanje abstrakcije in večkratnega dedovanja.
Uporaba
Dedovanje omogoča ponovno uporabo kode. Vmesniki omogočajo abstrakcijo in večkratno dedovanje.

Povzetek - Dedovanje vs vmesnik na Javi

Java je programski jezik z več paradigmi, ki podpira objektno usmerjeno programiranje. Dediščina in vmesniki so povezani s objektno usmerjenim programiranjem. Razlika med dedovanjem in vmesnikom je v tem, da je dedovanje izpeljati nove razrede iz obstoječih razredov in vmesnikov, je v izvajanju abstraktnih razredov in večkratnega dedovanja.

Prenesite različico PDF Inheritance vs Interface v Javi

Lahko prenesete PDF različico tega članka in jo uporabljate za namene brez povezave, kot je navedeno v navodilu. Prosimo, prenesite PDF različico tukaj Razlika med dedovanjem in vmesnikom na Javi

Referenca:

1.Point, Vadnice. "Dedovanje dedovanja.", Tutorials Point, 31. oktober 2017. Na voljo tukaj 
2.Point, Vadnice. "Vmesniki Java." , Tutorials Point, 31. oktober 2017. Na voljo tukaj 

Vljudnost slik:

1.'CPT-OOP-dedovanje-kolesa 'avtor Pluke - Lastno delo, (Public Domain) prek Commons Wikimedia