I Java er ' strækker sig ' og ' redskaber ” Nøgleord er afgørende for effektiv integrering af flere funktioner. For eksempel at arve de allerede tildelte funktionaliteter for at opdatere dem eller sortere dataene på en passende måde. I sådanne tilfælde er nøgleordene 'udvider' og 'implementerer' nyttige til at gøre tingene praktiske i udviklerens ende og administrere ressourcerne effektivt.
Denne blog vil fremhæve forskellene mellem Java 'extends' og 'implements'.
Java 'udvider' søgeord
Java ' strækker sig ' nøgleordet bruges af en børneklasse, dvs. ' afledt ' for at arve den overordnede klasse, dvs. ' grundlag ” ved at få adgang til dens funktionaliteter.
Syntaks
klasse A {
// legeme
}
klasse B udvider A {
// legeme
}
I denne syntaks, ' B ' svarer til den underordnede klasse, der arver forældreklassen ' EN ' via ' strækker sig ” nøgleord.
Eksempel 1: Brug af søgeordet 'udvider' i Java
Dette eksempel bruger ' strækker sig ' søgeord for at arve forælderen, dvs. ' grundlag ' klasse:
klasse Forældreklasse {Streng x = 'Hår' ;
}
klasse børneklasse udvider forældreklassen {
offentlig String konkat ( ) {
Vend tilbage x.concat ( 'ry' ) ;
} }
offentlig klasse Forlænger {
offentlig statisk tomrum hoved ( Streng args [ ] ) {
børneklasseobjekt = ny børneklasse ( ) ;
System.out.println ( objekt.konkat ( ) ) ;
} }
I henhold til ovenstående kodestykke skal du anvende følgende trin:
- For det første skal du erklære en forældreklasse ved navn ' Forældreklasse '.
- I sin definition initialiseres den angivne variabel.
- Arv nu en børneklasse fra forældreklassen via ' strækker sig ” nøgleord.
- I den underordnede klassedefinition skal du definere en funktion med navnet ' concat() '.
- I funktionsdefinitionen skal du kalde variablen fra den overordnede klasse og tilføje den angivne streng via den tilknyttede ' concat() ” metode.
- I ' hoved() '-metoden, skal du oprette et underordnet klasseobjekt ved hjælp af ' ny ' søgeord og ' børneklasse() ” konstruktør.
- Til sidst skal du aktivere børneklassefunktionen ' concat() ” via det oprettede objekt.
Produktion
I dette output kan det visualiseres, at forældreklassens funktionalitet, dvs. variabel(x) ” nedarves korrekt via søgeordet “extends”, og strengen er derfor sammenkædet i overensstemmelse hermed.
Java 'implementerer' nøgleord
Det ' redskaber ” nøgleord anvendes til at implementere en grænseflade i klassen fra den samme eller en ekstern fil.
Syntaks
offentlig grænseflade InterfaceName {ugyldig x ( ) ;
standard ugyldig y ( ) {
// legeme
}
}
klasse z implementerer InterfaceName {
// klasses krop
}
I denne syntaks:
- “ x ” refererer til en abstrakt metode.
- “ og ” angiver standardmetoden.
- “ klasse z ' svarer til den klasse, der implementerer ' Interfacenavn '-grænseflade via ' redskaber ” nøgleord.
Eksempel 2: Brug af nøgleordet 'implementerer' i Java
I dette særlige eksempel er en grænseflade bestående af ' abstrakt ' og ' Standard ” metoder kan implementeres i klassen.
Interface kode
offentlig grænseflade alder {offentligt ugyldigt navn ( ) ;
standard ugyldig DOB ( ) {
System.out.println ( 'DOB -> 28/8/1999' ) ;
} }
I ovenstående grænsefladekode skal du inkludere en abstrakt metode med navnet ' navn() ' og definer standardmetoden ' DOB() ” udskrivning af den angivne besked hhv.
Klassekode
Fortsæt nu til følgende kodelinjer:
klasseprøve implementerer alder {offentligt ugyldigt navn ( ) {
System.out.println ( 'Navn -> David' ) ;
} }
offentlig klasse interface2 {
offentlig statisk tomrum hoved ( Streng args [ ] ) {
prøveobjekt = ny prøve ( ) ;
objekt.navn ( ) ;
objekt.DOB ( ) ;
} }
I denne kodeblok:
- Definer en klasse ved navn ' prøve 'implementering af grænsefladen' alder ' via ' redskaber ” nøgleord.
- I sin (klasse) definition skal du definere den abstrakte metode ' navn() ” angivet i grænsefladen, der viser det angivne navn.
- I ' hoved() ”-metoden, skal du oprette et klasseobjekt via den diskuterede tilgang.
- Til sidst påkalder du abstrakt- og standardmetoden ved hjælp af henholdsvis det oprettede objekt.
Produktion
Dette resultat indebærer, at standardmetoden påberåbes, og den abstrakte metode anvendes korrekt baseret på den implementerede grænseflade.
Kerneforskelle mellem 'udvider' og 'implementerer' i Java
Følgende er nogle af de centrale forskelle mellem 'udvider' og 'implementerer' søgeord i Java:
strækker sig | redskaber |
Dette nøgleord kan bruges af en klasse til at arve dens overordnede klasse eller en grænseflade til at arve andre grænseflader. | En klasse kan implementere grænsefladen via nøgleordet 'implementerer'. |
Kun én forældreklasse kan udvides med en klasse. | En klasse kan implementere/anvende flere grænseflader ad gangen. |
Det er ikke obligatorisk for en underklasse, der udvider en overordnet klasse, at tilsidesætte alle metoderne i en overordnet klasse. | Det er obligatorisk, at en klasse, der implementerer en grænseflade, også skal implementere/anvende alle grænseflademetoderne. |
Konklusion
Det ' strækker sig ' nøgleord kan bruges af en klasse eller en grænseflade til at arve dens overordnede klasse eller andre grænseflader, hvorimod ' redskaber ” nøgleord bruges af en klasse til at implementere en grænseflade. Denne blog demonstrerede forskellene mellem 'udvider' og 'implementerer' i Java ved hjælp af praktiske eksempler.