Можно ли вызвать конструктор с результатом метода из другого конструктора того же класса?Вызов метода Java в цепочке конструктора
Я хочу, чтобы иметь возможность принимать входные данные в нескольких формах, и есть что-то вроде:
public class MyClass
{
public MyClass(int intInput)
{
...
}
public MyClass(String stringInput);
{
this(convertToInt(stringInput));
}
public int convertToInt(String aString)
{
return anInt;
}
}
Когда я пытаюсь скомпилировать это я получаю
error: cannot reference this before supertype constructor has been called
отсылая к convertToInt
.
Я бы не рекомендовал вызывать метод внутри конструктора; объектное строительство должно быть быстрым и простым. Возможно, это метод 'init()'? – mre