W tym przykładzie nauczymy się, jak wywołać jeden konstruktor z innego konstruktora w Javie.
Aby zrozumieć ten przykład, należy znać następujące tematy dotyczące programowania w języku Java:
- Konstruktory Java
- Metody Java
Przykład 1: Program Java do wywoływania jednego konstruktora z innego
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(); ) )
Wynik
Suma wynosi: 7
W powyższym przykładzie utworzyliśmy klasę o nazwie Main. Tutaj utworzyłeś dwa konstruktory wewnątrz klasy Main.
Main() (… ) Main(int arg1, int arg2) (… )
Wewnątrz pierwszego konstruktora użyliśmy this
słowa kluczowego do wywołania drugiego konstruktora.
this(5, 2);
W tym przypadku drugi konstruktor jest wywoływany z pierwszego konstruktora przez przekazanie argumentów 5 i 2 .
Uwaga : Linia wewnątrz konstruktora, która wywołuje inny konstruktor, powinna być pierwszą linią konstruktora. Oznacza to, że this(5, 2)
powinien to być pierwszy wiersz Main()
.
Przykład 2: Wywołaj konstruktora nadklasy z konstruktora klasy potomnej
Możemy również wywołać konstruktora klasy nadrzędnej z konstruktora klasy potomnej za pomocą 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(); ) )
Wynik
Najnowsza wersja to: 11
W powyższym przykładzie utworzyliśmy nadklasę o nazwie Languages i podklasę Main. W konstruktorze klasy Main zwróć uwagę na linię,
super(11, 8);
Tutaj wywołujemy konstruktora nadklasy (tj. Languages(int version1, int version2)
) Z konstruktora podklasy ( Main()
).