Looking for java Keywords? Try Ask4Keywords

Java Language Конструктор по умолчанию


пример

«Default» для конструкторов состоит в том, что у них нет аргументов. Если вы не укажете какой-либо конструктор, компилятор создаст для вас конструктор по умолчанию.
Это означает, что следующие два фрагмента семантически эквивалентны:

public class TestClass {
    private String test;
}
public class TestClass {
    private String test;
    public TestClass() {

    }
}

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

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

public class TestClass {
    private String test;
    public TestClass(String arg) {
    }
}
public class TestClass {
    private String test;
    public TestClass() {
    }
    public TestClass(String arg) {
    }
}

Помните, что сгенерированный конструктор не выполняет нестандартную инициализацию. Это означает, что все поля вашего класса будут иметь значение по умолчанию, если у них нет инициализатора.

public class TestClass {

    private String testData;

    public TestClass() {
        testData = "Test"
    }
}

Конструкторы называются так:

TestClass testClass = new TestClass();