Diferența dintre moștenire și interfață în Java

Diferența cheie - moștenire vs Interface în Java
 

Java este un limbaj de programare dezvoltat de Sun Microsystems. Java poate fi folosit pentru a dezvolta diverse aplicații. Este un limbaj multi-paradigmă care susține obiecte orientate, structurate etc. Principalul avantaj al Java este că susține programarea orientată pe obiecte (OOP). Programatorul poate crea clase și obiecte. Există patru piloni în PLO. Acestea sunt moștenire, polimorfism, abstracție și încapsulare. Moștenirea și interfețele sunt legate de OOP. diferența cheie între moștenire și interfață este asta moștenirea este de a obține noi clase din clasele existente și o interfață este de a implementa clase abstracte și moștenire multiplă.

CUPRINS

1. Prezentare generală și diferență cheie
2. Ce este moștenirea în Java
3. Ce este interfața în Java
4. Asemănări între moștenire și interfață în Java
5. Comparație comparativă în parte - Moștenire vs. Interfață în Java în formă tabulară
6. rezumat

Ce este moștenirea în Java?

Moștenirea poate atinge gradul de utilizare a codului. Moștenirea ajută la reutilizarea atributelor și metodelor unei clase existente. Mecanismul de derivare a clasei noi folosind clasa veche se numește moștenire. Clasa veche este cunoscută ca clasă parentală sau clasă superioară. Clasa derivată se numește clasă sau subclasă copil.

Sintaxa Java de moștenire este după cum urmează.

clasa subclass_name se extinde superclass_name

declarația variabilă;

declarație de metodă;

Moștenirea poate fi explicată prin exemplul următor. Să presupunem că există o clasă numită A după cum urmează.

clasa publica A

public void sum ()

System.out.println ( „Suma“);

Dacă vrem să adăugăm o nouă metodă fără a schimba clasa existentă, putem să o facem după cum urmează.

clasa publica B

public void sub ()

System.out.println ( „Sub“);

Programatorul poate folosi moștenirea pentru a folosi suma A ().

clasa publica B extinde clasa A

public void sub ()

System.out.println ( „Sub“);

În funcția principală, este posibil să creați un obiect din B și call sub (), care aparține clasei B și sum (), care aparține clasei A folosind moștenirea.

public static void principal (String [] args)

B obj = nou B ();

obj.sub ();

obj.sum ();

Există diferite tipuri de moștenire. Sunt moștenire unică, moștenire multiplă, moștenire pe mai multe niveluri și moștenire ierarhică. În singură moștenire, există o clasă de bază și o clasă derivată. În moștenirea pe mai multe niveluri, există trei clase și anume, clasa de bază, clasa intermediară și clasa derivată. Clasa intermediară moștenește din clasa de bază, iar clasa derivată moșteneste de la clasa intermediară. În ierarhică, există o clasă de bază și multe clase derivate. Există un tip special cunoscut sub numele de Moștenire hibridă. Este o combinație a două sau mai multe tipuri de moștenire.

Figura 01: Moștenire

În Moștenire multiplă există multe clase de bază și o clasă derivată. Să presupunem că clasele A și B sunt clasele de bază. Clasa C este clasa derivată. Dacă clasele A și B au aceeași metodă, iar programatorul operează această metodă din clasa derivată, aceasta va cauza o problemă de ambiguitate. Moștenirea a două clase poate provoca o eroare de compilare. Prin urmare, moștenirea multiplă nu este acceptată în Java. O interfață poate fi utilizată pentru a depăși această problemă.

Ce este interfața în Java?

Abstractarea este un proces de ascundere a detaliilor implementării și afișarea numai a funcționalităților utilizatorului. Abstractizarea poate fi realizată utilizând Clase Abstract sau Interfețe. O metodă abstractă este o metodă fără o implementare. O clasă cu cel puțin o metodă abstractă este o clasă abstractă. Exemplu de clasă abstractă este după cum urmează.

clasa abstractă A

abstract void sum ();

Să presupunem că există două clase abstracte ca A și B. Pentru a implementa metodele abstracte ale lui A și B, se creează o nouă clasă C. Apoi, clasa C ar trebui să extindă atât A și B., dar moștenirea multiplă nu este acceptată în Java. Prin urmare, ar trebui să utilizeze interfețe. Interfețele pot fi folosite pentru a declara metode, dar nu este posibil să se definească metode. Nu este posibil să creați un obiect folosind interfețe. Clasa C ar trebui să implementeze toate metodele din interfața A și B.

interfața A

void sum ();

interfața B

void sub ();

clasa C implementează A, B

public void sum ()

System.out.println ( „însumării“);

public void sub ()

System.out.println ( „Scadere“);

Acum, în programul principal este posibil să creați un obiect din C și să apelați ambele metode.

public static void principal (String [] args)

C obj = noua C ();

obj.sum ();

obj.sub ();

Deci, interfețele pot folosi pentru a pune în aplicare mai multe moșteniri.

O altă utilizare a interfețelor este aceea că asigură securitate. Consultați codul de mai jos.

interfața A

void sum ();

clasa B implementează A

public void sum ()

System.out.println ( „însumării“);

public void multiplicare ()

System.out.println ( „multiplicare“);

Când creați un obiect din B, este posibil să apelați ambele metode sum () și multiplicare (). Dacă programatorul dorește să restricționeze utilizarea funcției multiplicare (), este posibilă după cum urmează.

public static void principal (String [] args)

A obj = nou B ();

obj.sum ();

A obj = nou B (); va crea un obiect. Este de tip A, iar memoria este alocată ca B. Este posibil să se apeleze suma () dar nu se poate executa multiplicat (). Această restricție se face folosind interfețe.

Care sunt asemănările dintre moștenire și interfață în Java?

  • Ambele concepte sunt legate de programarea orientată pe obiecte
  • Ambele reprezintă relația IS-A.

Care este diferența dintre moștenire și interfață în Java?

Moștenire vs. Interfață în Java

Moștenirea este un concept OOP care derivă noi clase din clasele existente. Interfața este un mecanism în cadrul OOP de implementare a abstractizării și moștenirii multiple.
folosire
Moștenirea oferă reutilizarea codului. Interfețele oferă abstracție și moștenire multiplă.

Rezumat - Moștenire vs Interface în Java

Java este un limbaj de programare multi-paradigmă care susține programarea orientată pe obiecte. Moștenirea și interfețele sunt legate de programarea orientată pe obiecte. Diferența dintre moștenire și interfață este că moștenirea este de a obține noi clase din clasele existente, iar interfețele sunt de a implementa clase abstracte și moștenire multiplă.

Descărcați versiunea PDF a succesiunii vs. interfață în Java

Puteți descărca versiunea PDF a acestui articol și o puteți utiliza în scopuri offline conform notei de citare. Descărcați versiunea PDF aici Diferența dintre moștenire și interfață în Java

Referinţă:

1. Puncte, Tutoriale. "Java Moștenire"., Tutoriale Point, 31 octombrie 2017. Disponibil aici 
2.Point, Tutoriale. "Interfețe Java". , Tutoriale punct, 31 octombrie 2017. Disponibil aici 

Datorită fotografiei:

1. "CPT-OOP-moștenire-biciclete" By Pluke - Muncă proprie, (Domeniul Public) via Commons Wikimedia