Introduksjon til Constructor i Java
Konstruktører i Java er spesielle typer metoder som brukes til å initialisere objektene i klassen. Konstruktører kalles på tidspunktet for objektopprettelse av klasse. Akkurat som metoder, selv om de har et sett med kodelinjer, er de ganske forskjellige fra dem. Konstruktører har samme navn som Java-klassen, men den har ingen returtype. I Java er et nytt () nøkkelord som brukes til å lage et objekt, og hver gang et nytt objekt opprettes og en konstruktør kalles. Konstruktøren kalles etter at minnet er tildelt objektet. På tidspunktet for objektopprettelse brukes konstruktører til å initialisere verdiene til klassevariabler til enten standard eller ønsket.
Hvis brukeren ikke oppretter noen konstruktør i programmet, oppretter Java selv en standardkonstruktør for det og tildeler standardverdier til de forskjellige objektene som for numerisk standardverdi er 0, for et tegn ('\ 0') og referansevariabler som null . Som metoder kan konstruktører bli overbelastet, dvs. at en enkelt klasse kan ha mange konstruktører hvis alle har en unik signatur.
Den grunnleggende syntaks for Constructor i Java er gitt nedenfor:
syntax
public class Student() // name of the class
(
. . . .
. . . .
. . . .
Student() // this is Constructor with the same name of class
(
. . .
. . .
)
new Student(); // object creation and value initialization
)
I syntaks over er Student () navnet på konstruktøren som er det samme som navnet på klassen og objektene i Java opprettes ved hjelp av nøkkelordet nytt.
Hvordan fungerer Constructor i Java?
For å forstå bruken av konstruktører i Java, la oss ta et eksempel gitt nedenfor:
Kode
public class Student()
(
int rollno;
String name;
Student(int rollno, String name)
(
this.rollno = rollno;
this.name = name;
)
public static void main(String() args)
(
Student st = new Student(12, 'Ananya');
System.out.println(“Student name = ”+ st.name + “Student rollno = ”+st.rollno);
)
)
Produksjon
I eksemplet over har vi forekomstvariabler (klassevariabler). Rulle nr og navn og st Er navnet på objektet som er opprettet av klassen Student. Når objektet st opprettes, påkaller det konstruktøren Student og initialiserer klassevariablene med rollno-verdien som 12 og navn som 'Ananya', ellers blir standardverdier som 0 for rollno og null for navnet tilordnet variablene. Etter at du har tildelt verdiene og skrevet dem ut, skrives studentnavnet ut som Ananya og Student rollno som 12.
Typer konstruktører i Java
Det er to typer konstruktører i Java basert på parametere:
1. Ikke-parameteriserte / Ingen argumenter Konstruktør
Når vi ikke overfører argumenter i konstruktøren, er den konstruktøren kjent som en ikke-parameterisert eller ingen-argument konstruktør. Når programmereren ikke definerer noen konstruktører i Java-programmet, legger Java-kompilatoren selv en konstruktør i seg, kjent som standardkonstruktør som gir standardverdier til objektet som 0, null osv. Standardkonstruktøren er ingen spesiell type konstruktør men faller i kategorien konstruktører uten argumenter.
Eksempel (standardkonstruktør)
Kode
public class Hello()
(
String name;
void display() //method to display name the value of variables
(
System.out.println(“name is” +name);
)
)
public class HelloMain()
(
public static void main(String() args)
(
Hello h1 = new Hello();
h1.display();
)
)
Produksjon:
I eksemplet over er dette ingen konstruktører definert av programmereren, så kompilatoren vil behandle dette programmet som:
Kode
public class Hello()
(
String name;
Hello() //default constructor created by compiler
(
name = null
)
void display()
(
System.out.println(“name is” +name);
)
)
public class HelloMain()
(
public static void main(String() args)
(
Hello h1 = new Hello();
h1.display();
)
)
Eksempel (ikke-parameterisert konstruktør)
Kode
public DemoProgram() // class
(
DemoProgram() // constructor with no arguments
(
System.out.println(“Hello this is just an example of no-arg constructor”);
)
public static void main(String() args)
(
new DermoProgram();
)
)
Produksjon:
Som i eksemplet ovenfor, for konstruktøren DemoProgram () er det ingen argumenter som er sendt, bare meldingen skrives ut, og derfor er den kjent som No-argument constructor.
2. Parameterisert konstruktør
Parameteriserte konstruktører er konstruktørene der vi passerer argumentene eller parametrene. I denne konstruktøren passeres verdier på tidspunktet for objektskaping.
Eksempel (Parameteriserte konstruktører)
Kode
public class Animal()
(
int legs;
String sound;
Animal(int legs, String sound) // parameterized constructor
(
this.legs = legs; // values with get initialize of what is passed while object crea-this.sound = sound; // tion, ie (4, “bow bow”)
)
void display() // method to display the values
(
System.out.println(“Legs are ”+legs+“Sound is ”+sound);
)
)
class AnimalPlanet()
(
Public static void main(String() args)
(
Animal an = new Animal(4, “bow bow”);
an.display();
)
)
Produksjon:
I eksemplet ovenfor er verdien 4 tilordnet bena og strengen "bue bue" er tilordnet lyden i konstruktør Animal. Så når metoden vises, blir begge verdiene skrevet ut i utdataene.
Viktige poeng å huske
- Hver klasse har en konstruktør enten programmereren lager den eller ikke.
- Konstruktørnavnet skal være det samme som klassens navn.
- Konstruktøren har ingen returtype, i motsetning til metoder.
- dette () og super () søkeordet må være den første setningen i en konstruktør.
- Som metoder kan konstruktører bli overbelastet.
- Konstruktører kan ikke overstyres.
- Én konstruktør kan påkalle en annen konstruktør av samme klasse ved å bruke nøkkelordet dette ().
- Tilgangspesifikatorer / modifikatorer kan brukes før navnet på konstruktøren for å erklære omfanget av det i en klasse.
- I Java kan en konstruktør aldri være statisk, endelig, abstrakt og synkronisert.
Konklusjon
Konstruktører spiller en viktig rolle når det gjelder å jobbe med programmeringsspråk for Java. Man må trenge å forstå de fulle konseptene til Constructor, ulike typer Constructors, Constructor Chaining, super () nøkkelordet som brukes til å kalle overordnede konstruktører til å fungere i henhold til det spesifikke scenariet. Selv om det å jobbe med konstruktører i Java er veldig enkelt som å jobbe med metoder, men det er få punkter som er spesifikke for konstruktører som bør læres grundig.
Anbefalt artikkel
Dette er en guide til konstruktøren i java. Her diskuterer vi hvordan konstruktør fungerer i java sammen med typene og eksemplene med riktig kodeimplementering. Du kan også gå gjennom de foreslåtte artiklene våre for å lære mer-
- Konstruktør i JavaScript og typer
- Introduksjon til Constructor in Python
- Konstruktør i C ++ og typer
- Konstruktør i PHP (eksempler)