În acest exemplu, vom învăța cum putem apela un constructor de la un alt constructor în Java.
Pentru a înțelege acest exemplu, ar trebui să aveți cunoștințele despre următoarele subiecte de programare Java:
- Constructori Java
- Metode Java
Exemplul 1: program Java pentru a apela un constructor de la altul
class Main ( int sum; // first constructor Main() ( // calling the second constructor this(5, 2); ) // second constructor Main(int arg1, int arg2) ( // add two value this.sum = arg1 + arg2; ) void display() ( System.out.println("Sum is: " + sum); ) // main class public static void main(String() args) ( // call the first constructor Main obj = new Main(); // call display method obj.display(); ) )
Ieșire
Suma este: 7
În exemplul de mai sus, am creat o clasă numită Main. Aici, ați creat doi constructori în interiorul clasei Main.
Main() (… ) Main(int arg1, int arg2) (… )
În interiorul primului constructor, am folosit this
cuvinte cheie pentru a apela al doilea constructor.
this(5, 2);
Aici, al doilea constructor este apelat de la primul constructor prin trecerea argumentelor 5 și 2 .
Notă : Linia din interiorul unui constructor care apelează un alt constructor ar trebui să fie prima linie a constructorului. Adică this(5, 2)
ar trebui să fie prima linie a Main()
.
Exemplul 2: Apelați constructorul superclasei din constructorul clasei copil
Putem apela și la constructorul superclasei din constructorul clasei copil folosind super()
.
// superclass class Languages ( // constructor of the superclass Languages(int version1, int version2) ( if (version1> version2) ( System.out.println("The latest version is: " + version1); ) else ( System.out.println("The latest version is: " + version2); ) ) ) // child class class Main extends Languages ( // constructor of the child class Main() ( // calling the constructor of super class super(11, 8); ) // main method public static void main(String() args) ( // call the first constructor Main obj = new Main(); ) )
Ieșire
Cea mai recentă versiune este: 11
În exemplul de mai sus, am creat o superclasă numită Limbi și o subclasă Main. În interiorul constructorului clasei Main, observați linia,
super(11, 8);
Aici, numim constructorul superclasei (adică Languages(int version1, int version2)
) din constructorul subclasei ( Main()
).