Java Constructor Tutorial

Java Constructor Tutorial



Konstruktørverktøyet er en veldig viktig og nyttig metode som brukes for objektorientert programmering. Det er ikke obligatorisk å erklære en konstruktør for noen klasse, og dette verktøyet brukes hovedsakelig til å initialisere objektet for klassen på tidspunktet for objektopprettelse. Konstruktøren fungerer ikke som andre normale metoder. Konstruktørverktøyet kalles heller automatisk når et objekt deklareres, og det tildeler minneplassering for objektet. Denne opplæringen viser deg hvordan forskjellige typer brukerdefinerte konstruktører kan implementeres og brukes i programmering av Java-klasser.

Funksjoner av Constructor

  1. Navnet på konstruktøren må være det samme som klassenavnet.
  2. Returtypen er ugyldig.
  3. Konstruktøren kan ikke være statisk, abstrakt og endelig.

Typer konstruktører







  1. Misligholde
  2. Uten parameter
  3. Parameterisert

1. Standardkonstruktør

Standardkonstruktøren opprettes av Java -kompilatoren når koderen ikke deklarerer noen konstruktør for klassen og denne konstruktøren ikke inneholder noe argument. Java -filen inneholder ingen kode for standardkonstruktøren. Standardkonstruktorkoden opprettes på tidspunktet for sammensetting av Java -kode og lagres i .klasse fil.



2. Parameterløs konstruktør

Når en konstruktør deklareres uten noen parameter eller argument, kalles den en parameterløs konstruktør. En parameterløs konstruktør fungerer som en standardkonstruktør, og denne konstruktøren kan inneholde setninger, eller den kan være tom.



3. Parameterisert konstruktør

Når en konstruktør deklareres med en eller flere parametere, kalles den en parameterisert konstruktør. Parameterverdiene til konstruktøren passeres på tidspunktet for objektopprettelse.





Eksempel 1: Opprette en konstruktør uten parametere

Følgende kode viser hvordan du bruker en parameterløs konstruktør. Det ble nevnt før at konstruktormetodens navn vil være det samme som klassens navn. Her er klassens navn ‘ con1 , 'Så det parameterløse konstruktørnavnet er' con1 () . ’To klassevariabler,‘ Navn 'Og' alder , 'Er deklarert her. På tidspunktet for erklæringen av objektvariabelen ' obj , 'Blir konstruktøren oppringt og en bestemt melding blir skrevet ut. Deretter tildeles to verdier i klassevariablene og skrives ut senere med 'Obj' gjenstand.

offentlig klassecon1{

// deklarere variabler
String Navn;
intalder;

// Parameterløs konstruktør
con1() {
System .ute.println('Konstruktør heter.');

// Initialiser variablene
Navn= 'Fahim Reza';
alder= 30;
}

// main () -metoden
offentlig statisk tomromhoved-( String []args) {

// Lag et objekt
con1 obj= nycon1();

// Skriv ut verdiene til objektegenskapene
System .ute.skrive ut('Alderen til' +obj.Navn + ' er ' +obj.alder);
}
}

Produksjon:



Følgende bilde viser utgangen av koden. Konstruktøren kalles på tidspunktet for objektopprettelsen og meldingen Det kalles konstruktør skrives ut. Verdiene til ‘ Navn 'Og' alder 'Er tilordnet inne i konstruktøren. Verdiene til disse variablene skrives ut senere.

Eksempel 2: Lag en parameterisert konstruktør

Følgende kode vil beregne den totale lønnen til en ansatt basert på grunnlønnen og skrive ut den andre informasjonen til den ansatte ved siden av den beregnede lønnen. Her deklareres syv klassevariabler. Konstruktøren, kalt ' con2 () , 'Har tre parametere. De to første parameterne vil ta strengverdiene i ' Navn 'Og' post 'Parametere, og den tredje parameteren vil ta den numeriske verdien i' grunnleggende ' parameter. Verdiene til disse parameterne vil bli overført på tidspunktet for objektopprettelse. Konstruktøren vil initialisere klassevariablene med disse verdiene og beregne de andre verdiene basert på verdien av ' grunnleggende ' parameter. Deretter skrives navnet, stillingen og lønnen til den ansatte.

offentlig klassecon2{

// Deklarere variabler
String Navn;
String post;
intGrunnleggende;
dobbeltHusleie;
dobbeltMedisinsk;
dobbeltTransportere;
dobbeltLønn;

// Parameterisert konstruktør
con2( String Navn, String post,intgrunnleggende) {
dette.Navn =Navn;
dette.post =post;
dette.Grunnleggende =grunnleggende;
dette.Husleie =grunnleggende*0,3;
dette.Medisinsk =grunnleggende*0,2;
dette.Transportere =grunnleggende*0,1;
Lønn=grunnleggende+Husleie+Medisinsk+Transportere;
}

// main () -metoden
offentlig statisk tomromhoved-( String []args) {

// Lag et objekt
con2 obj= nycon2('Mir Sabbir','Regnskapsfører',65000);

// Skriv ut verdiene til objektegenskapene
System .ute.skrive ut('Arbeidstakers navn: ' +obj.Navn + ' n' + 'Post: '+obj.post +
' n' + 'Lønn: TK'+obj.Lønn);
}
}

Produksjon:

Følgende bilde viser utgangen av koden. Her er den ansattes navn, stilling og grunnlønn angitt i erklæringen om opprettelse av objekter. Den totale lønnen, navnet og stillingen skrives ut her.

Eksempel 3: Lag konstruktorkjede

Det er viktig å vite om arvefunksjonen i objektorientert programmering for å forstå konseptet konstruktorkjetting. Når en ny klasse opprettes ved å arve en annen klasse, kalles den arv. I dette tilfellet er alle egenskapene til overordnet eller basisklassen tilgjengelige fra barnet eller den avledede klassen. Når et objekt i barneklassen blir opprettet, ringer den automatisk til konstruktøren for foreldreklassen før den kaller sin egen konstruktør. Den ' super() ’Metode brukes på andre språk for å ringe overordnet konstruktør, men Java -kompilatoren kaller denne metoden automatisk. Å bruke konstruktører på denne måten kalles konstruktorkjetting, og denne prosessen er vist i dette eksemplet. Her er navnet på foreldreklassen ' forelder 'Og navnet på barneklassen er' con3 . ’Det er en annen metode som heter‘ kombinere() 'I barneklassen som kombinerer verdiene som er tildelt i foreldre- og barnkonstruktørene.

klasseforelder{

// Deklarere variabel
String strVal;

// Foreldrekonstruktør
forelder(){
System .ute.println('Foreldrekonstruktør heter');
strVal= 'Jeg liker ';
}
}

offentlig klassecon3strekkerforelder{

// Deklarere variabel
String childStrVal;

// Barnekonstruktør
con3(){
System .ute.println('Barnekonstruktør heter');
childStrVal=strVal+ 'Java -programmering';
}

// En annen metode for å kombinere strenger
String kombinere()
{
komme tilbake dette.childStrVal;
}

// main () -metoden
offentlig statisk tomromhoved-( String []args) {

// Lag et objekt
con3 obj= nycon3();
// Skriv ut verdiene til objektegenskapene
System .ute.skrive ut(obj.kombinere());
}
}

Produksjon:

Følgende bilde viser utgangen av koden. Den første meldingen skrives ut fra den overordnede konstruktøren, mens den andre meldingen skrives ut fra den underordnede konstruktøren. Den siste meldingen skrives ut ved å ringe ' kombinere() ’Metode.

Konklusjon

Konseptet med konstruktøren og bruken av forskjellige konstruktører forklares i denne opplæringen ved å bruke enkle Java -kodeeksempler som nybegynnere kan følge. Forhåpentligvis har disse eksemplene hjulpet deg med å forstå det grunnleggende i Java -konstruktøren.