У меня возникли проблемы с использованием нескольких конструкторов в java.
что я хочу сделать, это примерно так:
public class MyClass {
// first constructor
public MyClass(arg1, arg2, arg3) {
// do some construction
}
// second constructor
public MyClass(arg1) {
// do some stuff to calculate arg2 and arg3
this(arg1, arg2, arg3);
}
}
но я не могу, поскольку второй конструктор не может вызвать другой конструктор, если он не является первой строкой.
Какое общее решение для такой ситуации? Я не могу вычислить arg2 и arg3 "в строке". Я подумал, может быть, создание метода вспомогательного строительства, который будет выполнять фактическую конструкцию, но я не уверен, что так "красиво"...
EDIT. Использование вспомогательного метода также проблематично, поскольку некоторые из моих полей являются окончательными, и я не могу установить их с помощью вспомогательного метода.