Ključna razlika - dedovanje vs vmesnik v Javi
Java je programski jezik, ki ga je razvil Sun Microsystems. Java se lahko uporablja za razvoj različnih aplikacij. Je jezik z več paradigmami, ki podpira objektno usmerjeno, strukturirano itd. Glavna prednost Java je, da podpira objektno usmerjeno programiranje (OOP). Programer lahko ustvarja razrede in predmete. V OOP so štirje stebri. So dedovanje, polimorfizem, abstrakcija in inkapsulacija. Dedovanje in vmesniki so povezani z OOP. Ključna razlika med dedovanjem in vmesnikom je v tem, da je dedovanje pridobivanje novih razredov iz obstoječih razredov, vmesnik pa za izvajanje abstraktnih razredov in večkratnega dedovanja.
VSEBINA
1. Pregled in ključna razlika
2. Kaj je dedovanje v Javi
3. Kaj je vmesnik v Javi
4. Podobnosti med dedovanjem in vmesnikom v Javi
5. Vzporedna primerjava - Dedovanje in vmesnik v Javi v tabelarni obliki
6. Povzetek
Kaj je dedovanje v Javi?
Dedovanje lahko doseže ponovno uporabnost kode. Dedovanje pomaga pri ponovni uporabi atributov in metod obstoječega razreda. Mehanizem izpeljave novega razreda s pomočjo starega razreda se imenuje dedovanje. Stari razred je znan kot nadrejeni razred ali super razred. Izpeljani razred se imenuje podrejeni razred ali podrazred.
Sintaksa dedovanja Java je naslednja.
class subclass_name razširi superclass_name {
deklaracija spremenljivke;
izjava o metodi;
}
Koncept dedovanja lahko razložimo z naslednjim primerom. Predpostavimo, da obstaja razred z imenom A, kot sledi.
javni razred A {
javna praznina () {
System.out.println (»Vsota«);
}
}
Če želimo dodati novo metodo, ne da bi spremenili obstoječi razred, lahko to storimo na naslednji način.
javni razred B {
javna void sub () {
System.out.println (“Sub”);
}
}
Programer lahko z dedovanjem uporablja vsoto razreda A ().
javni razred B razširja razred A {
javna void sub () {
System.out.println (“Sub”);
}
}
V glavni funkciji je mogoče z dedovanjem ustvariti objekt B in poklicati sub (), ki spada v razred B, in sum (), ki spada v razred A.
public static void main (String args) {
B obj = novo B ();
obj.sub ();
obj.sum ();
}
Obstajajo različne vrste dedovanja. So dedovanje po enem samem, večkratno dedovanje, večstopenjsko dedovanje in hierarhično dedovanje. Pri enojnem dedovanju obstaja en osnovni razred in en izpeljani razred. V večstopenjskem dedovanju obstajajo trije razredi, in sicer osnovni razred, vmesni razred in izpeljani razred. Vmesni razred podeduje iz osnovnega razreda, izpeljani razred pa iz vmesnega razreda. V hierarhičnem dedovanju 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 Multiple dedovanje obstaja veliko osnovnih razredov in en izpeljani razred. Predpostavimo, da sta razreda A in B osnovna razreda. Razred C je izpeljani razred. Če imata oba razreda A in B isto metodo in jo programer pokliče iz izvedenega razreda, bo to povzročilo dvoumnost. Dedovanje dveh razredov lahko povzroči napako v času prevajanja. Zato Java večkratnega dedovanja ne podpira. Za premagovanje te težave je mogoče uporabiti vmesnik.
Kaj je vmesnik v Javi?
Abstrakcija je postopek skrivanja podrobnosti izvedbe in prikazovanja uporabniku samo funkcionalnosti. Abstrakcijo lahko dosežemo z abstraktnimi razredi ali vmesniki. Abstraktna metoda je metoda brez izvedbe. Predavanje z vsaj eno abstraktno metodo je abstraktni razred. Primer abstraktnega razreda je naslednji.
abstraktni razred A {
abstraktna praznina ();
}
Predpostavimo, da obstajata dva abstraktna razreda A in B. Za izvajanje abstraktnih metod A in B se ustvari nov razred C. Potem bi moral razred C razširiti A in B., vendar večkratno dedovanje v Java ni podprto. Zato bi morali uporabljati vmesnike. Vmesnike je mogoče uporabiti za deklariranje metod, metod pa ni mogoče določiti. Z vmesniki ni mogoče ustvariti predmeta. Razred C mora izvajati vse metode v vmesnikih A in B.
vmesnik A {
neveljavna vsota ();
}
vmesnik B {
void sub ();
}
razred C izvaja A, B {
javna praznina () {
System.out.println (»Vsota«);
}
javna void sub () {
System.out.println (“Odštevanje”);
}
}
Zdaj je v glavnem programu mogoče ustvariti objekt C in poklicati obe metodi.
public static void main (String args) {
C obj = nov C ();
obj.sum ();
obj.sub ();
}
Torej, vmesniki lahko uporabljajo za izvajanje več dedovanja.
Druga uporaba vmesnikov je ta, da zagotavlja varnost. Glejte spodnjo kodo.
vmesnik A {
neveljavna vsota ();
}
razred B izvaja A {
javna praznina () {
System.out.println (»Vsota«);
}
javna praznina pomnoži () {
System.out.println (»Množenje«);
}
}
Pri ustvarjanju predmeta B lahko obe metodi pokličeta sum () in multiply (). Če želi programer omejiti uporabo funkcije multiply (), je to mogoče na naslednji način.
public static void main (String args) {
A obj = nov B ();
obj.sum ();
}
A obj = nov B (); bo ustvaril objekt. Je tipa A in pomnilnik je dodeljen kot B. Možno je poklicati sum (), vendar ni mogoče izvesti množenja (). Ta omejitev je narejena z uporabo vmesnikov.
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?
Diff Article Sredina pred mizo
Dedovanje vs vmesnik v 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 v Javi
Java je programski jezik z več paradigmami, ki podpira objektno usmerjeno programiranje. Dedovanje in vmesniki so povezani s objektno usmerjenim programiranjem. Razlika med dedovanjem in vmesnikom je v tem, da je dedovanje pridobivanje novih razredov iz obstoječih razredov, vmesniki pa v izvajanju abstraktnih razredov in večkratnega dedovanja.
Prenesite PDF različico Dedovanje vs vmesnik v Javi
Lahko prenesete različico tega članka v obliki PDF in jo uporabite za uporabo brez povezave, kot je navedeno v opombi. Prenesite različico PDF tukaj Razlika med dedovanjem in vmesnikom v Javi