Tipuri de moștenire în Java cu exemple
Publicat: 2022-06-26Moștenirea în Java permite dezvoltatorilor să creeze noi clase cu cele existente. Permite reutilizarea codului. Moștenirea poate fi atât moștenire unică, cât și moștenire pe mai multe niveluri. Moștenirea scade redundanța codului, îl face mai lizibil și mai ușor de întreținut și, astfel, acționează ca un instrument pentru creșterea calității software-ului.
Importanța moștenirii
În Java, Moștenirea este metoda prin care o clasă dobândește proprietățile și funcționalitățile unei alte clase. Moștenirea economisește timp, scade redundanța, face codul mai lizibil, mai ușor de înțeles și mai ușor de întreținut și acționează ca un instrument pentru creșterea calității software-ului. Moștenirea are multe aplicații vitale în limbajul de programare Java Moștenirea permite dezvoltatorilor să creeze noi clase folosind cele existente Clasele moștenite acționează ca șabloane sau planuri Moștenirea oferă reutilizabilitate software Clasele moștenite acționează ca o relație părinte-copil Metodele moștenite fac ca clasele moștenite independente Atributele moștenite fac clasele moștenite independent.
Ierarhia moștenirii denotă o relație părinte-copil între diferitele niveluri de moștenire. Cel mai înalt nivel de moștenire este cunoscut sub numele de „Super Class” sau „Parent Class”.
Învață cursuri de dezvoltare software online de la cele mai bune universități din lume. Câștigați programe Executive PG, programe avansate de certificat sau programe de master pentru a vă accelera cariera.
Sintaxa moștenirii Java
class Subclass-name extinde Superclass-name
{
//metode și domenii
}
Cuvântul cheie extins indică faptul că creați o nouă clasă care moștenește toată funcționalitatea de la părintele ei. Înseamnă „a crește” sau a îmbunătăți ceea ce există deja.
Exemplu: În exemplul de mai jos de moștenire, clasa Bicycle este o clasă de bază, clasa MountainBike este o clasă derivată care extinde clasa Bicycle, iar clasa Test este o clasă de șofer pentru a rula un program.
Intrare:
// Program Java pentru a ilustra
// conceptul de moștenire
// clasa de bază
clasa biciclete {
// clasa de biciclete are două câmpuri
public int gear;
public int viteza;
// clasa Bicycle are un constructor
Bicicletă publică (întreprindere, viteză int)
{
this.gear = gear;
aceasta.viteza = viteza;
}
// clasa de biciclete are trei metode
public void applyBrake(int decrement)
{
viteza -= scade;
}
public void speedUp (increment int)
{
viteza += increment;
}
// Metoda toString() pentru a imprima informații despre Bicycle
public String toString()
{
întoarcere („Numărul de viteze este ” + viteză + „\n”
+ „viteza bicicletei este” + viteza);
}
}
// clasa derivata
clasa MountainBike extinde Bicicletă {
// subclasa MountainBike adaugă încă un câmp
public int seatHeight;
// subclasa MountainBike are un constructor
MountainBike public (întreprindere, viteză int,
int startHeight)
{
// invocând constructorul clasei de bază (Bicycle).
super(treaptă, viteză);
seatHeight = startHeight;
}
// subclasa MountainBike adaugă încă o metodă
public void setHeight(int newValue)
{
seatHeight = newValue;
}
// suprascrie metoda toString().
// din Bicicletă pentru a imprima mai multe informații
@Override public String toString()
{
return (super.toString() + „\naltimea scaunului este „
+ Înălțimea scaunului);
}
}
// clasa de sofer
test de clasă publică {
public static void main(Argumente șir[])
{
MountainBike mb = MountainBike nou (3, 100, 25);
System.out.println(mb.toString());
}
}
Ieșire :
Numărul de viteze este 3
viteza bicicletei este de 100
inaltimea scaunului este de 25
Termenii utilizați în moștenire
- Clasa : O clasa este un grup de obiecte care au proprietati comune. Este ca un manual de instrucțiuni sau un plan din care sunt create alte unități individuale.
- Subclass /Child Class : O subclasă este o clasă care moștenește cealaltă clasă. Se mai numește și clasă derivată, clasă extinsă sau clasă copil.
- Superclasa /clasa părinte : Superclasa este clasa de la care o subclasă moștenește caracteristicile. Se mai numește și clasă de bază sau clasă părinte.
- Reutilizabilitate : Reutilizarea este un principiu cheie de proiectare în programarea orientată pe obiecte. Înseamnă că puteți reutiliza câmpurile și metodele din clasele existente atunci când creați altele noi, în loc să vă repetați din nou cu codificare individuală de fiecare dată.
Cursuri populare și articole despre inginerie software
Programe populare | |||
Program Executive PG în Dezvoltare Software - IIIT B | Programul de Certificat Blockchain - PURDUE | Programul de certificate de securitate cibernetică - PURDUE | MSC în Informatică - IIIT B |
Alte articole populare | |||
Salariu inginer cloud în SUA 2021-22 | Salariu AWS Solution Architect în SUA | Salariu pentru dezvoltatori backend în SUA | Salariu pentru Dezvoltator Front End în SUA |
Salariu web developer in SUA | Întrebări de interviu Scrum Master în 2022 | Cum să începi o carieră în securitatea cibernetică în 2022? | Opțiuni de carieră în SUA pentru studenții la inginerie |
Tipuri de moștenire Java
1. Moștenire unică
Moștenirea unică înseamnă că o clasă extinde alta sau implementează mai multe interfețe simultan cu același modificator de acces sau nu modificator de acces, adică fie public, fie privat. Subclasa creată moștenește toate funcțiile membre și membrii de date din baza/superclasa sa, cu excepția celor declarate ca private, iar acești membri pot fi accesați de membrii și prietenii subclasei.
Consultați exemplul de mai jos:
Intrare:
// Program Java pentru a ilustra
// conceptul de moștenire unică
import java.io.*;
import java.lang.*;
import java.util.*;
clasa unu {
public void print_A()
{
System.out.println(„A”);
}
}
clasa a doua extinde unul {
public void print_for() { System.out.println(“for”); }
}
// Clasa de șofer
clasă publică principală {
public static void main(String[] args)
{
doi g = noi doi();
g.print_A();
g.print_for();
g.print_Apple();
}
}
Ieșire :
A
Pentru
Măr
2. Moștenirea pe mai multe niveluri
Moștenirea pe mai multe niveluri este cea în care există un lanț de moștenire. n În Java, o clasă derivată nu poate accesa direct membrii bunicilor. Când aveți o ierarhie de moștenire ca aceasta, în care fiecare nou nivel moștenește de la o altă persoană sau un lucru dinaintea lor (sau invers), devine dificil pentru orice obiect dat din oricare grup, deoarece pot folosi doar ceea ce este disponibil la propriul lor. niveluri; prin urmare, depanarea este mai obositoare decât este necesar!
Intrare:
// Program Java pentru a ilustra
// conceptul de moștenire pe mai multe niveluri
import java.io.*;
import java.lang.*;
import java.util.*;
clasa unu {
public void print_Inheritance()
{
System.out.println(„Moștenire”);
}
}
clasa a doua extinde unul {
public void print_in() { System.out.println(“in”); }
}
clasa trei se extinde pe doi {
public void print_Inheritance()
{
System.out.println(„Java”);
}
}
// Clasă derivată
clasă publică principală {
public static void main(String[] args)
{
trei g = trei noi ();
g.print_Moștenire();
g.print_in();
g.print_Java();
}
}
Ieșire :
Moştenire
În
Java
3. Moștenirea ierarhică
Două clase dintr-o ierarhie pot moșteni una de la alta. De exemplu, dacă Câinele și Pisica se încadrează ambii în categoria Animal, atunci va exista o moștenire ierarhică, ei fiind descendenți ai acelei clase.
Intrare:
clasa Animal{
void eat(){System.out.println(„eating…”);}
}
clasa Câine extinde Animal{
void bark(){System.out.println(„latră…”);}
}
clasa Cat extins Animal{
void miau(){System.out.println(„miau…”);}
}
clasa TestInheritance3{
public static void main(String args[]){
Cat c=New Cat();
c. miau();
c.eat();
//c.bark();//CTError
}}
Ieșire :
miaunat…
mâncând…
4. Moștenire multiplă (prin interfețe)
Java nu acceptă moștenirea multiplă cu clase, dar este posibil să le obții prin interfețe. În imaginea de mai jos, clasa C este derivată atât din A, cât și din B, ceea ce înseamnă că au unele caracteristici în comun, în timp ce au implementări diferite pentru altele, în funcție de nevoile lor specifice în execuția codului sau îndeplinirea metodelor cerute de utilizatori (i).
Intrare:
// Program Java pentru a ilustra
// conceptul de moștenire multiplă
import java.io.*;
import java.lang.*;
import java.util.*;
interfata unu {
public void print_eye();
}
interfata doi {
public void print_for();
}
interfața trei se extinde unul, doi {
public void print_eye();
}
copilul clasei implementează trei {
@Override public void print_eye()
{
System.out.println(„Ochi”);
}
public void print_for() { System.out.println(“for”); }
}
// Clasă derivată
clasă publică principală {
public static void main(String[] args)
{
copil c = copil nou();
c.print_eye();
c.print_for();
c.print_eye();
}
}
Ieșire :
Ochi
pentru
Ochi
5. Moștenirea hibridă (prin interfețe)
Moștenirea hibridă este un tip de programare care ne permite să amestecăm două sau mai multe tipuri. Clasele nu pot face acest lucru singure, deoarece au un singur set de metode, ceea ce înseamnă că avem nevoie de un alt obiect pentru ca totul să funcționeze corect, dar interfețele oferă liniște sufletească, permițându-vă să știți cum va arăta programul înainte de a fi scris orice cod. !
Intrare
(Referinţă)
Clasa A și B extinde clasa C → Moștenire ierarhică
Clasa D extinde clasa A → Moștenire unică
clasa C
{
public void disp()
{
System.out.println(„C”);
}
}
clasa A se extinde pe C
{
public void disp()
{
System.out.println(„A”);
}
}
clasa B se extinde pe C
{
public void disp()
{
System.out.println(„B”);
}
}
clasa D se extinde pe A
{
public void disp()
{
System.out.println(„D”);
}
public static void main(String args[]){
D obj = nou D();
obj.disp();
}
}
Ieșire:
D
Dacă doriți să aflați în profunzime despre moștenirea în Java și alte concepte OOP, v-am recomandat programul Executive PG pentru dezvoltarea software-ului upGrad de la IIIT-Bangalore . Cursul de 13 luni este conceput de profesioniști din industrie de clasă mondială și de facultate pentru a construi competențe în peste 30 de instrumente și software. A inclus peste 400 de ore de conținut, peste 30 de studii de caz și proiecte relevante pentru industrie și peste 10 sesiuni live pentru a vă ajuta să obțineți rezultatele dorite; Cursul oferă trei specializări, și anume dezvoltare full-stack, dezvoltare cloud back-end și securitate cibernetică.
Rezervă-ți locul în program astăzi!
Care sunt cele patru tipuri de moștenire?
Cele patru tipuri de moștenire în Java sunt: 1. Moștenirea ierarhică 2. Moștenirea hibridă 3. Moștenirea unică 4. Moștenirea pe mai multe niveluri
Explicați polimorfismul în Java.
Polimorfismul în Java este un concept de programare orientată pe obiecte în baza căruia obiectele din programe pot lua mai multe forme. Procedând astfel, un singur obiect poate efectua aceeași acțiune în mai multe moduri.
Explicați multithreadingul în Java.
Multithreadingul în Java este o caracteristică prin care mai multe părți (fiecare numită fir) ale unui program pot fi executate simultan pentru a permite utilizarea optimă a CPU.