Selles näites õpime, kuidas saaksime Java-s kutsuda ühte konstruktorit teisest konstruktorist.
Selle näite mõistmiseks peaksid teil olema teadmised järgmistest Java programmeerimise teemadest:
- Java konstruktorid
- Java meetodid
Näide 1: Java-programm ühe konstruktori helistamiseks teiselt
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(); ) )
Väljund
Summa on: 7
Ülaltoodud näites oleme loonud klassi nimega Main. Siin olete loonud Maini klassi kaks konstruktorit.
Main() (… ) Main(int arg1, int arg2) (… )
Esimese konstruktori sees oleme this
teise konstruktori kutsumiseks kasutanud märksõna.
this(5, 2);
Siin kutsutakse teine konstruktor esimesest konstruktorist, edastades argumente 5 ja 2 .
Märkus . Konstruktori sisemine joon, mis kutsub teist konstruktorit, peaks olema konstruktori esimene rida. See this(5, 2)
peaks olema esimene rida Main()
.
Näide 2: helistage superklassi konstruktorile lasteklassi konstruktorilt
Kasutamise abil võime kutsuda ka superklassi konstruktorit lasteklasside konstruktorist 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(); ) )
Väljund
Uusim versioon on: 11
Ülaltoodud näites oleme loonud keelte nimelise superklassi ja alamklassi Main. Pange tähele põhiklassi konstruktori joont,
super(11, 8);
Siinkohal kutsume Languages(int version1, int version2)
alaklassi ( Main()
) konstruktorit alamklassi ( ) konstruktorist .