Как вызвать конструктор из конструктора java

Аватар пользователя Сергей Якимович
Сергей Якимович
18 января 2023

Если в классе есть два конструктора, один из которых принимает параметры, а другой нет, то второй может вызвать первый с помощью ключевого слова this.

Кроме того из конструктора мы можем вызвать конструктор родительского класса с помощью ключевого слова super.

Примеры :

public class App {
    public static void main(String[] args) {
        class ClassX {
            int x;
            public ClassX() { // Конструктор без параметров
                this(0); // Вызов конструктора с параметрами
            }
            public ClassX(int xValue) {
                x = xValue;
            }
        }

        class ClassXY extends ClassX {
            int y;
            public ClassXY(int xValue, int yValue) {
                super(xValue); // вызов родительского конструктора
                y = yValue;
            }
        }

        ClassX classX = new ClassX();
        System.out.println(classX.x); // => 0

        ClassXY classXY = new ClassXY(1, 2);
        System.out.println(classXY.x + classXY.y); // => 3
    }
}
0 0