Razlika med razredom in vmesnikom v Javi

Avtor: Laura McKinney
Datum Ustvarjanja: 2 April 2021
Datum Posodobitve: 1 Maj 2024
Anonim
Technology Stacks - Computer Science for Business Leaders 2016
Video.: Technology Stacks - Computer Science for Business Leaders 2016

Vsebina


Oba razreda in vmesnik se uporabljata za ustvarjanje novih referenčnih vrst. Razred je zbirka polj in metod, ki delujejo na poljih. Vmesnik ima popolnoma abstraktne metode, tj. Metode z nikomer. Vmesnik je sintaktično podoben razredu, vendar obstaja velika razlika med razredom in vmesnikom, ki je razred, je mogoče sprožiti, vendar vmesnika ni mogoče instancirati. Naj se torej naučimo še nekaj razlike med razredom in vmesnikom s pomočjo spodnje primerjalne tabele.

  1. Primerjalna tabela
  2. Opredelitev
  3. Ključne razlike
  4. Zaključek

Primerjalna tabela

Osnove za primerjavoRazredVmesnik
OsnovniRazred je namenjen ustvarjanju predmetov.Vmesnika ni mogoče instancirati, saj metode ne morejo izvesti nobenega dejanja pri klicanju.
Ključna besedarazredvmesnik
Specifični dostopČlani razreda so lahko zasebni, javni ali zaščiteni.Člani vmesnika so vedno javni.
Metode Metode razreda so definirane za izvedbo določenega dejanja.Metode vmesnika so izključno abstraktne.
Izvedba / razširitevRazred lahko izvaja poljubno število vmesnikov in lahko razširi samo en razred.Vmesnik lahko razširi več vmesnikov, ne more pa uporabiti nobenega vmesnika.
Konstruktor Razred ima konstruktorje, ki inicializirajo spremenljivke.Vmesnik nikoli ne more imeti konstruktorja, saj skoraj ni nobene spremenljivke, ki bi jo lahko inicializirali.


Opredelitev razreda

Razred je najpomembnejši vidik Java programiranja brez razredov, ki ga ne morete izvajati. Razred ustvari referenčne vrste in ti referenčni tipi se uporabljajo za ustvarjanje predmetov. Razred ima podpis in telo. Podpis razreda vsebuje ime in podatke razreda, ki povedo, ali je razred podedoval drug razred. Telo razreda ima polja in metode, ki delujejo na teh poljih. Razred je ustvarjen s ključno besedo razred. Opazimo, kako prijaviti razred.

class class_name {/ * polja ... metode * /}

Ko je instanca razreda vsak izdelan predmet vsebuje kopijo polj in metod z njimi. Polja in člani, prijavljeni znotraj razreda, so lahko statični ali nestalni. Vrednost statičnih članov je konstantna za vsak objekt, medtem ko se nestalni člani vsak inicializirajo drugače glede na njegovo zahtevo.

Člani razreda imajo določevalnike dostopa, ki odločajo o vidnosti in dostopnosti članov do uporabnika ali do podrazreda. Specifični podatki o dostopu so javni, zasebni in zaščiteni. Razred lahko podeduje drug razred s pomočjo specifikatorja dostopa, ki bo odločal o vidnosti članov nadrazreda (podedovani razred) v podrazredu (razred podedovanja). Tako razred izpolnjuje koncept skrivanja in enkapsulacije podatkov v objektno orientiranem programiranju.


Opredelitev vmesnika

Med referenčnimi tipi, opredeljenimi v Javi, je tudi vmesnik. Pomembnost vmesnika je, da na Javi lahko razred podeduje samo en razred. Da bi se izognili tej omejitvi, so oblikovalci Java predstavili koncept vmesnika. Vmesnik je skladenjsko podoben razredu, vendar mu manjka deklaracija polja in metode znotraj vmesnika nimajo nobene izvedbe. Vmesnik je razglašen s ključno besedo vmesnik. Oglejmo si izjavo vmesnika.

vmesnik_ime vmesnika {vrsta var_name = vrednost; tip tipa1 (seznam parametrov); tip tipa2 (seznam parametrov); . . }

Vmesnik ne definira nobene metode, prijavljene v njem, ker nima polj, na katerih bi lahko deloval. Ker nobena metoda znotraj vmesnika ne izvede nobenega dejanja, vmesnika ni mogoče instancirati. Če ima vmesnik kateri koli član polja, ga je treba inicializirati ob njihovi deklaraciji. Vmesnik nikoli ne vsebuje nobenega konstruktorja, saj mu primanjkuje članov polja, da bi se lahko inicializirali. Torej, vmesnik samo določa, kaj mora razred narediti, namesto, kako to mora storiti.

Ko je enkrat ustvarjen vmesnik, lahko izvede ključno besedo poljubno število razredov izvedbe. Toda razredi, ki izvajajo vmesnik, morajo definirati vse metode znotraj vmesnika. Vmesnik lahko podeduje tudi drug vmesnik z uporabo podaljšati ključna beseda. Če razred izvaja vmesnik, ki razširi drug vmesnik. Nato mora razred definirati metode obeh vmesnikov, ki se pojavljajo v verigi. Metode znotraj vmesnika morajo biti vedno javne, saj morajo do njih dostopati razredi, ki jih izvajajo.

Ključne razlike med razredom in vmesnikom v Javi

  1. Razred je mogoče sprožiti z ustvarjanjem njegovih predmetov. Vmesnik ni nikoli instanciran, saj so metode, deklarirane znotraj vmesnika, abstraktne in ne izvajajo nobenega dejanja, zato ni nobenega instanciranja nobenega vmesnika.
  2. Razred se razglasi z uporabo ključnega razreda. Na enak način se ustvari vmesnik s pomočjo vmesnika za ključne besede.
  3. Člani razreda lahko imajo zaščitni specifikator, kot so javni, zasebni, zaščiteni. Toda člani vmesnika so vedno javni, saj morajo do njih dostopati razredi, ki jih izvajajo.
  4. Določene so metode znotraj razreda, da izvedejo dejanje na poljih, prijavljenih v razredu. Ker v vmesniku ni deklaracij polj, so metode znotraj vmesnika izključno abstraktne.
  5. Razred lahko implementira poljubno število vmesnikov, vendar lahko razširi le en super razred. Vmesnik lahko razširi poljubno število vmesnikov, vendar ne more uporabiti nobenega vmesnika.
  6. V razredu so znotraj njega definirani konstruktorji, da se spremenljivka inicializira. Toda vmesnik nima konstruktorjev, saj ni polj, ki bi jih bilo mogoče inicializirati. Polja vmesnika se inicializirajo samo ob deklaraciji.

Zaključek:

Tako razredi kot vmesniki imajo svoj pomen. Razred se uporablja, ko moramo določiti, kako bi nalogo opravili. Vmesnik se uporablja, ko moramo vedeti, katero nalogo je treba opraviti.