Java

Java Constructor Tutorial

Java Constructor Tutorial
Konstruktørværktøjet er en meget vigtig og nyttig metode, der bruges til objektorienteret programmering. Det er ikke obligatorisk at erklære en konstruktør for nogen klasse, og dette værktøj bruges hovedsageligt til at initialisere klassens objekt på tidspunktet for oprettelse af objekt. Konstruktøren fungerer ikke som andre normale metoder. I stedet kaldes konstruktørværktøjet automatisk, når et objekt erklæres, og det tildeler hukommelsesplaceringen til objektet. Denne tutorial viser dig, hvordan forskellige typer brugerdefinerede konstruktører kan implementeres og bruges i Java-klasseprogrammering.

Funktioner af Constructor

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

Typer af konstruktør

  1. Standard
  2. Parameterfri
  3. Parameteriseret

1. Standardkonstruktør

Standardkonstruktøren oprettes af Java-kompilatoren, når koderen ikke erklærer nogen konstruktør for klassen, og denne konstruktør ikke indeholder noget argument. Java-filen indeholder ingen kode til standardkonstruktøren. Standardkonstruktorkoden oprettes på tidspunktet for udarbejdelse af Java-kode og gemmes i .klasse fil.

2. Parameterfri konstruktør

Når en konstruktør erklæres uden nogen parameter eller argument, kaldes den en parameterfri konstruktør. En parameterfri konstruktør fungerer som en standardkonstruktør, og denne konstruktør kan indeholde udsagn, eller den kan være tom.

3. Parametreret konstruktør

Når en konstruktør erklæres med en eller flere parametre, kaldes den en parameteriseret konstruktør. Parameterværdierne for konstruktøren overføres på tidspunktet for oprettelse af objekt.

Eksempel 1: Oprettelse af en parameterløs konstruktør

Den følgende kode viser, hvordan man bruger en parameterfri konstruktør. Det blev tidligere nævnt, at konstruktormetodenavnet vil være det samme som klassens navn. Her er klassens navn 'con1,'så det parameterløse konstruktørnavn er'con1 ().'To klassevariabler,'navn'og'alder,'er erklæret her. På tidspunktet for erklæring af objektvariablen 'obj,'kaldes konstruktøren, og der udskrives en bestemt besked. Derefter tildeles to værdier i klassevariablerne og udskrives senere ved hjælp af 'obj' objekt.

offentlig klasse con1
// erklære variabler
Strengnavn;
int alder
// Parameterfri konstruktør
con1 ()
System.ud.println ("Konstruktør kaldes.");
// Initialiser variablerne
name = "Fahim Reza";
alder = 30;

// main () metode
offentlig statisk ugyldig hoved (String [] args)
// Opret et objekt
con1 obj = ny con1 ();
// Udskriv værdierne for objektets egenskaber
System.ud.print ("Alderen på" + obj.navn + "er" + obj.alder);

Produktion:

Det følgende billede viser output af koden. Konstruktøren kaldes på tidspunktet for oprettelse af objektet og meddelelsen “Konstruktør kaldes”Udskrives. Værdierne for 'navn'og'alder'tildeles inde i konstruktøren. Værdierne for disse variabler udskrives senere.

Eksempel 2: Opret en parametreret konstruktør

Den følgende kode beregner den samlede løn for en medarbejder baseret på grundlønnen og udskriver de øvrige oplysninger for den pågældende medarbejder sammen med den beregnede løn. Her erklæres syv klassevariabler. Konstruktøren, der hedder 'con2 (),'har tre parametre. De første to parametre tager strengværdierne i 'navn'og'stolpe'parametre, og den tredje parameter tager den numeriske værdi i'grundlæggende'parameter. Værdierne for disse parametre videregives på tidspunktet for oprettelse af objekt. Konstruktøren initialiserer klassevariablerne med disse værdier og beregner de andre værdier baseret på værdien af ​​'grundlæggende'parameter. Derefter udskrives medarbejderens navn, stilling og løn.

offentlig klasse con2
// Erklær variabler
Strengnavn;
String post;
int Grundlæggende;
dobbelt HouseRent;
dobbelt medicinsk;
dobbelt transport;
dobbelt løn;
// Parameteriseret konstruktør
con2 (strengnavn, strengpost, int grundlæggende)
det her.navn = navn;
det her.post = post;
det her.Grundlæggende = grundlæggende;
det her.Husleje = grundlæggende * 0.3;
det her.Medicinsk = grundlæggende * 0.2;
det her.Transport = grundlæggende * 0.1;
Løn = grundlæggende + husleje + medicinsk + transport;

// main () metode
offentlig statisk ugyldig hoved (String [] args)
// Opret et objekt
con2 obj = new con2 ("Mir Sabbir", "Revisor", 65000);
// Udskriv værdierne for objektegenskaberne
System.ud.print ("Medarbejdernavn:" + obj.navn + "\ n" + "Indlæg:" + obj.stolpe +
"\ n" + "Løn: TK" + obj.Løn);

Produktion:

Det følgende billede viser output af koden. Her er medarbejderens navn, stilling og grundløn angivet i opgørelsen om oprettelse af objekt. Den samlede løn, navn og stilling er trykt her.

Eksempel 3: Opret konstruktorkæde

Det er vigtigt at vide om arvefunktionen ved objektorienteret programmering for at forstå begrebet konstruktorkæde. Når en ny klasse oprettes ved at arve en anden klasse, kaldes den arv. I dette tilfælde er alle egenskaber for forældre- eller baseklassen tilgængelige fra underordnede eller afledte klasse. Når der oprettes et objekt fra underordnet klasse, ringer det automatisk til overordnede klasses konstruktør, inden det ringer til sin egen konstruktør. Det 'super()'metode bruges på andre sprog til at ringe til den overordnede konstruktør, men Java-kompilatoren kalder denne metode automatisk. Brug af konstruktører på denne måde kaldes konstruktorkæde, og denne proces er vist i dette eksempel. Her er forældreklassens navn 'forælder'og barneklassenavnet er'con3.'Der er en anden metode ved navn'forene()'i underordnet klasse, der kombinerer de værdier, der er tildelt forældrene og barnekonstruktørerne.

klasseforælder
// Erklær variabel
StrengstrVal;
// Forældrekonstruktør
forælder ()
System.ud.println ("Forældrekonstruktør kaldes");
strVal = "Jeg kan lide";


public class con3 udvider forælder
// Erklær variabel
String childStrVal;
// Barnekonstruktør
con3 ()
System.ud.println ("Child Constructor kaldes");
childStrVal = strVal + "Java-programmering";

// En anden metode til at kombinere strenge
String mejetærsker ()

returner dette.childStrVal;

// main () metode
offentlig statisk ugyldig hoved (String [] args)
// Opret et objekt
con3 obj = ny con3 ();
// Udskriv værdierne for objektets egenskaber
System.ud.udskrive (obj.forene());

Produktion:

Det følgende billede viser output af koden. Den første besked udskrives fra den overordnede konstruktør, mens den anden besked udskrives fra den underordnede konstruktør. Den sidste besked udskrives ved at ringe til 'forene()'metode.

Konklusion

Konceptet med konstruktøren og anvendelsen af ​​forskellige konstruktører forklares i denne vejledning ved hjælp af nemme Java-kodeeksempler, som uerfarne brugere kan følge. Forhåbentlig har disse eksempler hjulpet dig med at forstå det grundlæggende i Java constructor.

Installer nyeste Dolphin Emulator til Gamecube & Wii på Linux
Dolphin Emulator giver dig mulighed for at spille dine valgte Gamecube & Wii-spil på Linux Personal Computers (PC). Som en frit tilgængelig og open s...
Sådan bruges GameConqueror Cheat Engine i Linux
Artiklen dækker en vejledning om brug af GameConqueror-snydemotoren i Linux. Mange brugere, der spiller spil på Windows, bruger ofte "Cheat Engine" -a...
Bedste spilkonsolemulatorer til Linux
Denne artikel viser en liste over populære spilkonsolemuleringssoftware, der er tilgængelig til Linux. Emulation er et softwarekompatibilitetslag, der...