Помимо всех предыдущих аргументов для конструктора без аргументов, он является обязательным элементом JavaBeans, поскольку эти bean-компоненты могут быть созданы с использованием отражения (в частности, путем вызова Class.newInstance
). Как следствие, любая инфраструктура, основанная на JavaBeans, сделает этот конструктор без аргументов обязательной частью вашей архитектуры.
Существует также дополнительное преимущество, так как конструктор без аргументов может помочь представить своего рода свободный интерфейс, позволяя вам вызывать сеттер-вызовы. Например, в компании, в которой я работал, используется для определения рядом с сеттерами и геттерами с помощью таких методов:
class MyClass {
privaite int index;
public int getIndex() { return index; }
public void setindex(int index) { this.index = index; }
public MyClass withIndex(int index) {
setIndex(index);
return this;
}
}
Позволяет мне создавать объекты следующим образом:
MyClass myObject = new MyClass().withIndex(2);
Это был очень полезный способ создания объектов без определения конструкторов ошибок.