Hva er Java arv?

Når det gjelder Java, kan Arv brukes når en klasse ønsker å arve egenskapene til en annen eksisterende klasse. Klassen som vanligvis ønsker å bruke funksjonen til en annen klasse er kjent som underklasse, mens klassen hvis funksjoner må brukes, er kjent som superklassen.

Faktisk, i Java, bør alle klasser være avledet fra en eller annen klasse. Det fører mot spørsmålet “Hvor vil det hele starte?” Den høyeste klassen, klassen som andre klasser er avledet, er en objektklasse beskrevet i java.lang. Objektet er en rot av en struktur av klasser

Figuren nedenfor viser de to typene klasser:

Underklassen følger tilstand og oppførsel som variabler og metoder fra superklassen. Underklassen kan bare bruke elementene som er arvet fra superklassen, og også underklassen kan endre eller overstyre dette. Når du faller inn i hierarkiet, blir klassene derfor mer og mer spesifikke:

Arving fra objekt

Hver klasse arver direkte fra Objektklassen

I diagrammet over

grossist i offentlig klasse utvider Object (…… ..)

forhandler i offentlig klasse utvider grossisten (…… ..)

råvarer i offentlig klasse (…………)

Utvidelsesnøkkelordet viser den overordnede klassen som underklassen vanligvis er arvet fra og ikke kan brukes som identifikatorer

I offentlig klasse trenger Raw Material ikke å utvide nøkkelord, det får direkte tilgang til Object-klassen.

Java Inheritance Definition

En underklasse er en klasse som kommer fra en annen klasse. En underklasse følger tilstand og oppførsel fra alle forfedrene. Konseptet superklasse identifiserer en klasses direkte forfader og alle deres oppkommende klasser.

Forstå Java Arv med et eksempel

Arv beskriver er-forholdet mellom en superklasse så vel som underklasse. Utvider og implementerer nøkkelbegrep foretrekker å uttrykke arv i Java.

Det er forskjellige typer Java-arv som beskrevet nedenfor.

  1. Enkeltarv
  2. Flernivåarv
  3. Hierarkisk arv
  4. Flere arv
  5. Hybrid arvelighet

  • Enkeltarv

Hvis en klasse utvider en tilleggsklasse, kalles en slik arv på enkeltnivå.

public class A (
………..
)
public class B extends A (
………..
)

Klasse B har utvidet klasse A, og dermed har klasse B bruk av metoden displayA () til klasse A fordi det er egen metode.

  • Flere nivåer arv

Hvis en klasse utvider en tilleggsklasse, som i seg selv kan utvides med ganske enkelt en tilleggsklasse, kalles en slik arv form for multilevel arv.

public class A ( ……………… )
public class B extends A ( ……………… )
public class C extends B ( ……………… )

Produksjon

Klasse A utvides med ganske enkelt klasse B og deretter utvides klasse B av seg selv med klasse C, noe som gir klasse C en direkte som har tilgang til metoden displayA () og displayB () i klasse A og i tillegg til B ved ganske enkelt å få til disse et objekt i klasse C (uten å måtte generere objekter av klasse A og B).

  • Hierarkisk arv

Når et par klasser arver den samme klassen, er dette derfor kjent som hierarkisk arv. For eksempel utvider klasse B og C den samme klasse A.

public class A ( ……………… )
public class B extends A ( ……………… )
public class C extends A ( ……………… )

Hvis en klasse har mer enn en barneklasse (underklasse), så vel som i utgangspunktet mer enn en barneklasse, har en lignende foreldreklasse, kalles ganske enkelt en slik type arv hierarkisk arv.

Vi skriver en kode der klasse B og C utvider klasse A

  • Flere arv

Syntaks for flere arv

public class A ( ……………… )
public class B extends A ( ……………… )
public class D extends A, B, C ( ……………….. )

Merk: Flere arv støttes ikke i java.

Java støtter ikke flere arv. Dette er fordi flere arver forårsaker tvetydighet, og Java bruker derfor ikke den. Diamantproblematikk hjelper deg med å forstå dette scenariet.

Imidlertid kan flere arver i Java oppnås ved å bruke grensesnitt. Uansett om mange mengder grensesnitt i en klasse med en nøyaktig metode, er det ikke noen indikasjon på tvetydighet siden metoder i et grensesnitt ofte er abstrakte.

Den andre måten er å bruke grensesnitt. Grensesnitt vil begynne å bli viktige.

Et grensesnitt spesifiserer formen for metodene, men gir ingen implementeringsdetaljer; derfor kan du tenke på det omtrent som erklæringen om en klasse.

du kan opprette grensesnittet med grensesnittet nøkkelord:

interface C
(
…………………………
)
interface b
(
…………………….
)
class a implements b, c
(
………………………
)

Vi kan bruke disse to grensesnittene med redskapsnøkkelordet:

  • Hybrid arvelighet

Hybridarv er for det meste en blanding av mer enn en type arv. Slik som når klasse A og B utvider klasse C Pluss en ytterligere klasse D utvider klasse A etter at dette kan være en hybridarv siden det er mangfoldet av enkel og hierarkisk arv.

Produksjon

Stoppe arv med det endelige nøkkelordet

Du kan forhindre at klassen blir underklasse ved å erklære hele klassens finale som nedenfor

final class animal
(
public void breathe()
(
System.out.println("Breathing…");
)
)
class dog extends animal
(
public void breathe()
(
System.out.println("Barking…");
)
)
public class history
(
public static void main(String() args)
(
System.out.println("Creating an animal…");
animal a = new animal();
a.breathe();
System.out.println();
System.out.println("Creating an bulldog…");
dog d = new dog();
d.breathe();
)
)

Hvis du prøver å utføre denne koden:

Kan ikke underklasse endelige klasser: klasse dyr klasse hund utvider dyr 1 feil generert.

Lage konstanter med det endelige nøkkelordet

For å forhindre overstyring av metoden og for å forhindre underklassing. Det er en annen bruk for final i Java, du kan bruke den til å erklære konstanter.

I henhold til koden nedenfor:

public class history
(
Public static void main(String() args)
(
final int a = 4;
a = 5;
)
)

Hvis du prøver å utføre denne koden:

Kan ikke tilordne en verdi til en endelig variabel: en 1 feil generert

Topp Java arv selskaper

  1. Intel
  2. VM ware
  3. Adobe
  4. Nvidia
  5. Amazon
  6. Cisco
  7. Akamai
  8. Philips elektronikk.
  9. IBM
  10. SEVJE

Fordeler med Java Inheritance

Regnes for å være en av hovedfunksjonene i arv brukes til å redusere mengden duplikatkode i et søknadsskjema ved å dele ordinær kode mellom mange underklasser. Der det kan oppnås lik kode i to beslektede klasser, kan hierarkiet normalt refactoreres for å overføre den ordinære koden til en gjensidig superklasse. Dette vil resultere i en overlegen organisering av kode så vel som enklere kompilasjonsenheter i mindre størrelse.

  • Arv : Det kan opprette applikasjonskode som er mye mer tilpasningsdyktig for å endre bare fordi klasser som arver fra en standard superklasse kan brukes om hverandre. Når returtypen til en prosedyre er superklassen.
  • Gjenbrukbarhet - Evne til å administrere offentlige metoder for en baseklasse uten å omskrive lignende.
  • Utvidbarhet - utvide baseklasselogikken i henhold til forretningslogikken til den avledede klassen.
  • Data skjuler - baseklasse kan ønske å holde noen få data private, så de blir aldri modifisert av den avledede klassen.
  • Overstyring - Med arv kan vi klare å overstyre metodene til baseklassen, slik at viktig implementering av baseklasse-metoden kan fullføres i den avledede klassen.

Hvorfor skal vi bruke Java Inheritance?

Arv er et effektivt programmeringskonsept, men det kan være enkelt å bruke upassende. Vanligvis er grensesnitt mer effektive.

Arv er det beste valget når:

  • Arvehierarkiet ditt betegner et "er-et" forhold, men ikke et "ha-et" forhold.
  • Du kan bruke koden fra baseklassene på nytt.
  • Det kan hende du må bruke lignende klasse og måter på forskjellige datatyper.
  • Klassehierarkiet er ganske grunt, sammen med andre utviklere skal egentlig ikke bidra med mange flere faser.
  • Du ønsker å opprette globale variasjoner til avledede klasser ved å endre en baseklasse.

Hvorfor trenger vi Java-arv?

Java Inheritance er et OOP (objektorientert programmering) konsept. Hovedformålet med arv er å alltid lage en viss del av prosjektets kode som kan brukes på nytt med mulighet for å legge til eller eliminere valgte funksjoner etterpå. En barneklasse kan arve eller overstyre valgte metoder fra foreldreklassen den arvet; det er metodene fra uten å utveksle foreldreklassen over seg selv. Dette kan muligens inkludere egne nye metoder som vanligvis ikke finnes i barneklassen.

  • Innkapsling: Når vi involverer noen vanlige attributter, innkapsler vi etter dette disse i en foreldreklasse og gir ganske enkelt spesielle attributter til barneklasser.
  • Polymorfisme : Vi kunne bruke polymorfisme med arv i Java. For å sikre i henhold til formen for barneklasse, opptrer eksakte klasser på en annen måte.
  • Gjenbruk av kode : Å bruke arv kan være nyttig for gjenbruk av kode.
  • Effektivitet : Det kan være effektivt å bruke arv mens du skriver kode. Dette kan øke hastigheten på oppgaven.

På samme måte som i det virkelige liv, kunne et barn arve utvalgte funksjoner fra foreldrene sine, og gjennom utvalgte miljøvariasjoner utvikle nye funksjoner eller slippe funksjoner han oppnådde fra foreldrene.

Hvem er det rette publikummet for å lære Java Inheritance-teknologier?

Når de tenker på hva som bør gjøres med Java Inheritance, tenker flere utviklere å bygge:

Android-utvikler -

Android er det mest effektive mobile operativsystemet i dagens konkurransedyktige marked med mer enn 1, 5 millioner nye enheter aktivert per dag. Android-opplæring gir deg praktisk erfaring med å lage så vel som å konstruere enkle til komplekse Android-apper, noe som sikrer deg dyktige til å skaffe deg drømme-IT-jobben. Du kan ha en utmerket historie innen programmering, men Android-trening vil være til fordel for at du forbedrer dine evner.

Android vokser definitivt, så når du lærer de grunnleggende prinsippene så vel som funksjoner, vil ferdighetssettet ditt vokse riktig i tillegg til det. Utviklere kan lage spill og apper for Android-brukere og spre dem gjennom en åpen verden. Android-trening er blant de mest intelligente fakta en utvikler kan oppnå, så den har mange fordeler.

IoT Developer -

Du kan høre ganske mye om Internet of Things (IoT) for tiden. IoT er rundt, fra sensorer i enorme industrimaskiner i smarthus-enheter som digitale sikkerhetskameraer. I utgangspunktet, visste du at den populære Nest-termostaten vil være avhengig av en bemerkelsesverdig kombinasjon av Java og AI? Noen få smarte automater er avhengig av Java, og jobber med programvare for å spore inventar, temperatur, fuktighet, så vel som region. Videre er flere bærbare teknologiprogrammer designet i Java Inheritance.

Big Data-analyse -

I dag er big data-analyse kjernen i en av de mest interessante bruksområdene av teknologi. Forskningsstudier i flere viktige bransjer bruker innovative dataanalyseteknikker for å lære nye mønstre i store datamengder, også for å finne ut av komplekse prosesser.

Innebygde systemer -

Innebygde systemer, fra små brikker til spesialiserte datamaskiner, er faktisk komponenter av større elektromekaniske enheter som utfører engasjerte oppgaver. Mange enheter, akkurat som SIM-kort, blue-ray disk-spillere, verktøymåler og TV-apparater, bruker innebygde Java-løsninger. I følge Oracle bruker 100% av Blu-ray Disc-spillere og 125 millioner TV-enheter av Java.

Hvordan denne teknologien vil hjelpe deg i karrierevekst?

Java er blant de mest fremtredende og i hovedsak brukte programmeringsspråket på kloden for informasjonsteknologi. Java er videre et grunnleggende programmeringsspråk som en ferskere også lett kan lære. I henhold til rapporten fra Oracle kjører Java på mer enn tre milliarder enheter ..!

Java er et eviggrønt programmeringsspråk. Nesten alle de kjente selskapene, inkludert IBM, Infosys, CTS og TCS, bruker Java som sitt ideelle programmeringsspråk.

I dag er de eksisterende Trend-Java-utviklerne kan leke med nedenfor,

  1. Java med Selenium Automation Tester
  2. Java med DevOps
  3. Java med Hadoop Development

Konklusjon

Arv er et kraftig Java-våpen som kan bidra til å lykkes på et mest passende språk. Det kan bidra til å minimere kodeduplisering og redusere feilene. Med koden satt i foreldreklassen, kan du ikke lenger foretrekke å skrive lignende kode for mange barneklasser med de samme egenskapene. Derfor utfører arv i Java gjenbrukbarhet for å være enklere tilgang til sluttbrukere.

Anbefalte artikler

Dette har vært en guide til Hva er Java Inheritance. Her diskuterte vi grunnleggende konsept, påkrevde ferdigheter, karrierevekst og fordeler med Java inheritance. Du kan også gå gjennom andre foreslåtte artikler for å lære mer -

  1. Hva er kunstig intelligens
  2. Hva er JavaScript?
  3. Hva er HTML?
  4. Hva er Azure?
  5. Endelig nøkkelord i Java