Konstruktørkæde i Java

Konstruktorkaede I Java



I Java spiller konstruktører en afgørende rolle i initialiseringen af ​​klassens forekomst. Disse ligner Java-metoderne. Konstruktørnavnet er dog altid det samme som klassenavnet, mens en normal metode kan have et hvilket som helst gyldigt navn. For det meste omtales disse også som specielle metoder til at erklære et objekt. Du kan oprette constructor chaining, som sker ved hjælp af arv. Den underordnede/underklasse-konstruktøren kalder først den overordnede/superklasse-konstruktøren, og derefter kan den underordnede-klasse-konstruktøren startes.

Dette indlæg vil fortælle om konstruktørkæden i Java.







Konstruktørkæde i Java

Konstruktørændringen er den vigtigste procedure for at kalde en konstruktør til en anden konstruktør i henhold til de angivne mål. En af de primære anvendelser af constructor chaining er at undgå overflødige koder, mens du har flere constructorer. Det gør koden let forståelig og læsbar.



Der er to metoder til at udføre constructor chaining i Java som nævnt nedenfor:



Lad os tjekke disse metoder en efter en for en bedre forståelse af constructor chaining.





Metode 1: Konstruktørkæder inden for samme klasse ved hjælp af 'this()' søgeord

Når konstruktørkæden udføres inden for samme klasse, vil Java ' det her() ” søgeord bruges. Standardkonstruktøren vil blive aktiveret, når en klasseinstans startes. Det vil kalde en anden konstruktør ved hjælp af ' det her ” nøgleord. Påkald derefter 'println()'-metoden for at vise resultatet på konsollen:



min ( ) {
det her ( 5 ) ;
System.out.println ( 'Standardkonstruktøren' ) ;
}


Kald nu den anden konstruktør bestående af en parameter ' -en ' og indstil værdien af ​​parametre i ' det her() ” nøgleord. Brug derefter ' println() ' og send 'a' som argument for at vise resultatet:

min ( int a ) {
det her ( 5 , tyve ) ;
System.out.println ( -en ) ;
}


I denne konstruktør har vi videregivet de to heltalstypeparametre som ' -en ' og ' b ”. Derefter skal du påberåbe 'println()'-metoden og sende ' a*b ” som vil returnere produktet af disse variable:

min ( int a, int b ) {
System.out.println ( -en * b ) ;
}


I ' hoved() ”-metoden skal du kalde standardkonstruktøren, der automatisk kalder de andre konstruktører og viser resultatet på konsollen:

offentlig statisk tomrum hoved ( Streng args [ ] ) {
ny min ( ) ;
}


Som et resultat vil output fra alle konstruktører blive vist på konsollen:


Hvis du vil kæde konstruktøren i flere klasser, så tjek nedenstående metode.

Metode 2: Konstruktør lænker til en anden klasse ved hjælp af 'super()' søgeord

Du kan også kæde konstruktørerne fra en klasse til en anden. Til dette bruges nøgleordet 'super()'. For at gøre det skal du bruge følgende kode i hovedklassen.

Først og fremmest skal du definere en strengtypevariabel ' navn ” og kald den første konstruktør ved at bruge hovedklassenavnet:

Strengnavn;
min ( ) {
det her ( '' ) ;
System.out.println ( 'Uden konstruktør af basisklasse' ) ;
}


Kald den anden konstruktør og send den ovenfor erklærede variabel ' Strengnavn ” som parameter. Brug ' det her ' nøgleord for at få adgang til værdien og påberåbe ' println() ” metode til udskrivningsformål:

min ( Strengnavn ) {
dette.navn = navn;
System.out.println ( 'Kalder parametriseret konstruktør af base' ) ;
}


Inde i ' hoved() '-metoden, kalder den underordnede klasse med parameteren ' navn ”. Det vil kalde de overordnede klassekonstruktører, hvor parameteren ' navn ” er bestået. Derefter vil det påkalde børneklassekonstruktøren med parameteren ' navn ”:

offentlig statisk tomrum hoved ( Streng args [ ] ) {
nyt barn ( 'navn' ) ;
}


Der oprettes en børneklasse, der bruger ' strækker sig ” nøgleord for at arve den overordnede klasse og kalde den tredje konstruktør. Kald derefter den næste konstruktør og inde i denne konstruktør, start den overordnede klasses anden konstruktør:

klasse Barn forlænger min {
Barn ( ) {
System.out.println ( 'Uden argument konstruktør af børneklasse' ) ;
}
Barn ( Strengnavn ) {
super ( navn ) ;
System.out.println ( 'Kalder parametriseret konstruktør af barn' ) ;
}
}


Produktion


Det handler om constructor chaining i Java.

Konklusion

I Java udføres konstruktørkæden i den samme klasse ved hjælp af nøgleordet 'this()', mens nøgleordet 'super()' bruges til at udføre konstruktørkædering på forskellige klasser. Konstruktørkæden sker ved hjælp af arv. Underklassekonstruktøren kalder først superklassekonstruktøren, og derefter kan underklassekonstruktørerne påkaldes. Dette indlæg har diskuteret konstruktørkæden i Java med praktiske eksempler.