Care este diferența dintre extensii și implementări în Java?



Acest articol despre extensii vs instrumente în java vă va ajuta să înțelegeți cum aceste două cuvinte cheie pot fi utilizate pentru a executa moștenirea în java în moduri diferite

Cuvintele cheie se extinde și unelte, ambele sunt utilizate pentru a executa conceptul de moștenire a , totuși, există o diferență subtilă între ele. Acest articol despre extensii vs instrumente în Java vă va ajuta să înțelegeți diferențele majore dintre aceste cuvinte cheie.

Subiectele discutate în acest articol sunt:





Pentru a înțelege mai binediferența dintre extinde și unelte, de asemenea, trebuie să învățați și să înțelegeți diferență între clasa abstractă și interfața în Java.

extinde Cuvânt cheie



Când o subclasă extinde alta clasă , permite subclasei să moștenească (de exemplu, să refolosească) și să suprascrie codul definit în supertipul. În termeni simpli, folosind cuvântul cheie extends, o nouă clasă creată (subclasă) poate moșteni caracteristicile unei clase existente (superclasă). De asemenea, se poatesuprascrie definit într-o superclasă. O clasă nu poate extinde niciodată mai mult de o superclasă în Java.Iată un demonstrând clasa abstractă:

pachetul MyPackage clasa A {String s A (String s1) {s = s1} void display () {System.out.println (s)}} clasa B extinde A {String l B (String s1, String s2) {super ( s1) l = s2} void display () {super.display () System.out.println (l)}} clasa ExtendsExample {public static void main (String args []) {A ob = new B ('Welcome', 'To Edureka') ob.display ()}}

Ieșire: Bine ati venit
La Edureka

Explicaţie: În codul de mai sus, puteți observa că clasa B are clasa A extinsă, are acces la metoda display () și a suprascris afișarea metodei () definită în clasa A. Această putere imensă este utilizată folosind cuvântul cheie extends.



implementează Cuvânt cheie

Când o clasăunelteo interfață, trebuie să furnizeze o implementare a tuturor metodelor declarate în interiorul unui interfață . Dacă clasa nu dorește să ofere implementare, se poate declara ca fiind clasa abstractă . De asemenea, o interfață nu poate implementa niciodată o altă interfață, deoarece implementarea înseamnă definirea metodelor și interfața are întotdeauna metode abstracte, astfel încât o interfață nu poate implementa niciodată o altă interfață.Iată un exemplu de program care demonstrează clasa abstractă:

pachetul MyPackage interface XYZ {void display (String s) void show (int i)} class Demo implementează XYZ {public void show (int i) {System.out.println ('integer value:' + i)} public void display ( String s) {System.out.println ('string value:' + s)}} class ImplementExample {public static void main (String args []) {XYZ d = new Demo () d.display ('TechDifferences') d .show (2)}}

Ieșire:

valoarea șirului: TechDifferences valoare întreagă: 2

În codul de mai sus, puteți observa că clasa Demoimplementează două metode declarate în interfața XYZ.

Din conținutul de mai sus, este posibil să fi observat diferența esențială dintre extinde și implementează în . Acum să mergem mai departe și să enumerăm alte diferențe.

extinde vs unelte

Tabelul de mai jos listează diferențele cheie dintre cuvintele cheie extinde și implementează.

Caracteristici de comparație Se extinde Instrumente

Implementare

O clasă poate moșteni o altă clasă sau o interfață poate moșteni alte interfețe folosind un cuvânt cheie extinde

diferența dintre ansible și bucătar

O clasă poate implementa o interfață folosind instrumente de cuvinte cheie

Metodă

Subclasa care extinde o superclasă poate sau nu să suprascrie toate metodele dintr-o superclasă

Clasa care implementează o interfață trebuie să implementeze toate metodele acelei interfețe.

Clasă

O clasă poate extinde o singură superclasă.

O clasă poate implementa orice număr de interfață în același timp

Interfață

O interfață poate extinde orice număr de interfețe

O interfață nu poate implementa niciodată o altă interfață

Ei bine, acum diferențele cheie dintre extinde și implementează

Acest lucru ne aduce la sfârșitul acestui lucruextinde vs instrumentele în articolul Java. Am trecut prin diferențele majore dintre extinde și implementează cuvinte cheie. În concluzie, ambele sunt utilizate pentru a executaConceptul de moștenire a Java, dar în moduri diferite.

Asigurați-vă că exersați cât mai mult posibil și reveniți la experiență.

Verificați de Edureka, o companie de învățare online de încredere, cu o rețea de peste 250.000 de elevi mulțumiți răspândiți pe tot globul. Suntem aici pentru a vă ajuta cu fiecare pas din călătoria dvs., pentru a deveni o afară de aceste întrebări java interviu, venim cu un curriculum care este conceput pentru studenți și profesioniști care doresc să fie un dezvoltator Java.

Ai o întrebare pentru noi? Vă rugăm să o menționați în secțiunea de comentarii a acestui „extinde vs implementează în Java” și ne vom contacta cât mai curând posibil.