Galvenā atšķirība - mantojums pret Java saskarni
Java ir programmēšanas valoda, kuru izstrādājusi Sun Microsystems. Java var izmantot dažādu lietojumprogrammu izstrādei. Tā ir daudzparadigmas valoda, kas atbalsta objektorientētu, strukturētu utt. Java galvenā priekšrocība ir tā, ka tā atbalsta objektorientētu programmēšanu (OOP). Programmētājs var izveidot klases un objektus. OOP ir četri pīlāri. Tie ir mantojums, polimorfisms, abstrakcija un iekapsulēšana. Mantošana un saskarnes ir saistītas ar OOP. Galvenā atšķirība starp mantojumu un saskarni ir tāda, ka mantošana ir jaunu klašu iegūšana no esošajām klasēm un interfeiss ir abstraktu klašu un vairāku mantojumu ieviešana.
SATURS
1. Pārskats un galvenās atšķirības
2. Kas ir mantojums Java
3. Kas ir Java saskarne
4. Mantojuma un Java saskarnes līdzības
5. Blakus salīdzinājums - Mantojums vs Java saskarne tabulas veidā
6. Kopsavilkums
Kas ir Java pārmantošana?
Mantošana var panākt koda atkārtotu lietošanu. Mantošana palīdz atkārtoti izmantot esošās klases atribūtus un metodes. Jaunās klases iegūšanas mehānismu, izmantojot veco klasi, sauc par mantojumu. Vecā klase ir pazīstama kā vecāku klase vai super klase. Atvasināto klasi sauc par bērnu klasi vai apakšklasi.
Java mantojuma sintakse ir šāda.
klases apakšklases_nosaukums paplašina virsklases_nosaukumu {
mainīgā deklarācija;
metodes deklarācija;
}
Mantojuma jēdzienu var izskaidrot, izmantojot šādu piemēru. Pieņemsim, ka ir klase ar nosaukumu A šādi.
publiskā klase A {
public void summa () {
System.out.println (“Summa”);
}
}
Ja mēs vēlamies pievienot jaunu metodi, nemainot esošo klasi, mēs varam to izdarīt šādi.
B klase {
public void sub () {
System.out.println (“Sub”);
}
}
Programmētājs var izmantot mantojumu, lai izmantotu A klases summu ().
publiskā B klase pagarina A klasi {
public void sub () {
System.out.println (“Sub”);
}
}
Pamatfunkcijā ir iespējams izveidot B objektu un izsaukt sub (), kas pieder B klasei, un sum (), kas pieder A klasei, izmantojot mantojumu.
public static void main (String args) {
B obj = jauns B ();
obj.sub ();
obj.sum ();
}
Ir dažādi mantojuma veidi. Tie ir viens mantojums, vairākkārtējs mantojums, daudzlīmeņu mantojums un hierarhiska mantošana. Vienreizējā mantojumā ir viena bāzes klase un viena atvasināta klase. Daudzlīmeņu mantojumā ir trīs klases, proti, bāzes klase, vidējā klase un atvasinātā klase. Starpklase pārmanto no bāzes klases, bet atvasinātā klase - no vidējās klases. Hierarhiskajā mantojumā ir viena bāzes klase un daudzas atvasinātas klases. Ir īpašs veids, kas pazīstams kā hibrīda mantojums. Tas ir divu vai vairāku mantojuma veidu apvienojums.
01. attēls: Mantojums
Vairākkārtējā mantojumā ir daudzas bāzes klases un viena atvasināta klase. Pieņemsim, ka A un B klase ir pamatklases. C klase ir atvasinātā klase. Ja gan A, gan B klasēm ir viena un tā pati metode un programmētājs izsauc šo metodi no atvasinātās klases, tas radīs neskaidrības problēmu. Divu klašu pārmantošana var izraisīt sastādīšanas laika kļūdu. Tāpēc Java neatbalsta vairākkārtēju mantošanu. Šīs problēmas pārvarēšanai var izmantot saskarni.
Kas ir Java saskarne?
Abstrakcija ir process, kurā tiek slēpta ieviešanas informācija un parādītas tikai lietotāja funkcijas. Abstrakciju var panākt, izmantojot abstraktās klases vai saskarnes. Abstraktā metode ir metode bez ieviešanas. Klase ar vismaz vienu abstraktu metodi ir abstrakta klase. Abstraktas klases piemērs ir šāds.
abstrakta A klase {
abstrakta tukšuma summa ();
}
Pieņemsim, ka ir divas abstraktas klases kā A un B. Lai ieviestu A un B abstraktas metodes, tiek izveidota jauna C klase. Tad C klasei vajadzētu pagarināt gan A, gan B, bet Java neatbalsta vairāku mantojumu. Tāpēc vajadzētu izmantot saskarnes. Saskarnes var izmantot, lai deklarētu metodes, taču nav iespējams definēt metodes. Izmantojot saskarnes, nav iespējams izveidot objektu. C klasei jāīsteno visas A un B saskarnes metodes.
saskarne A {
anulēta summa ();
}
saskarne B {
void sub ();
}
C klases instrumenti A, B {
public void summa () {
System.out.println (“Apkopojums”);
}
public void sub () {
System.out.println (“Atņemšana”);
}
}
Tagad galvenajā programmā ir iespējams izveidot objektu C un izsaukt abas metodes.
public static void main (String args) {
C obj = jauns C ();
obj.sum ();
obj.sub ();
}
Tātad, saskarnes var izmantot, lai īstenotu vairākkārtēju mantojumu.
Vēl viena saskarņu izmantošana ir tā, ka tā nodrošina drošību. Skatiet zemāk esošo kodu.
saskarne A {
spēkā neesoša summa ();
}
B klases instrumenti A {
public void summa () {
System.out.println (“Apkopojums”);
}
public void pavairot () {
System.out.println (“Reizināšana”);
}
}
Veidojot B objektu, abas metodes ir iespējams izsaukt par summu () un reizināt (). Ja programmētājs vēlas ierobežot, izmantojot funkciju pavairot (), tas ir iespējams šādi.
public static void main (String args) {
A obj = jauns B ();
obj.sum ();
}
A obj = jauns B (); izveidos objektu. Tas ir A tipa, un atmiņa tiek piešķirta kā B. Ir iespējams izsaukt summu (), bet nevar izpildīt reizināšanu (). Šis ierobežojums tiek veikts, izmantojot saskarnes.
Kādas ir Java mantojuma un saskarnes līdzības?
- Abi jēdzieni ir saistīti ar objektorientētu programmēšanu
- Abi pārstāv IS-A attiecības.
Kāda ir atšķirība starp Java mantojumu un saskarni?
Atšķirīgs raksts vidū pirms tabulas
Mantojums pret Java saskarni |
|
Mantošana ir OOP jēdziens, lai no esošajām klasēm iegūtu jaunas klases. | Interfeiss ir OOP mehānisms abstrakcijas un vairākkārtējas mantošanas ieviešanai. |
Lietošana | |
Mantošana nodrošina koda atkārtotu izmantošanu. | Saskarnes nodrošina abstrakciju un vairākkārtēju mantošanu. |
Kopsavilkums - mantošana vs saskarne Java
Java ir vairāku paradigmu programmēšanas valoda, kas atbalsta objektorientētu programmēšanu. Mantošana un saskarnes ir saistītas ar objektorientētu programmēšanu. Atšķirība starp mantojumu un saskarni ir tāda, ka mantošana ir jaunu klašu iegūšana no esošajām klasēm un saskarnes ir abstraktu klašu un vairāku mantojumu ieviešana.
Lejupielādējiet Java versijas Mantojums vs saskarne PDF versiju
Jūs varat lejupielādēt šī raksta PDF versiju un izmantot to bezsaistes vajadzībām, kā norādīts piezīmē. Lūdzu, lejupielādējiet PDF versiju šeit Starpība starp mantojumu un saskarni Java