Я создаю пустой класс Java и компилирую его, будет ли создан любой конструктор

Я создаю пустой класс Java и компилирую его, будет ли создан любой конструктор, так как он успешно компилируется

Класс ABC {

}

2 ответа

Решение

Если класс не содержит объявлений конструктора, то неявно объявляется конструктор по умолчанию без формальных параметров и без предложения throws.

Таким образом, компилятор установит для вас конструктор по умолчанию, если вы не будете использовать конструкторы.

Таким образом, ваш класс будет выглядеть так:

class ABC {

    public ABC() {

    }
}

Согласно документации Java ( Предоставление конструкторов для ваших классов):

Вам не нужно предоставлять конструкторы для вашего класса, но вы должны быть осторожны при этом. Компилятор автоматически предоставляет конструктор по умолчанию без аргументов для любого класса без конструкторов.

Он создаст конструктор по умолчанию, если конструктор не определен

Кроме того, если мы скомпилируем ваш класс ABC и декомпилируем сгенерированный байт-код, мы увидим этот код:

public class ABC {
    public ABC() {
    }
}

Таким образом, скомпилированная версия имеет конструктор по умолчанию

Другие вопросы по тегам