Инициализировать поле перед выполнением супер -конструктора?JAVA

Программисты JAVA общаются здесь
Anonymous
Инициализировать поле перед выполнением супер -конструктора?

Сообщение Anonymous »

В Java есть ли способ инициализировать поле до того, как супер конструктор запустится?class Base
{
Base(String someParameter)
{
System.out.println(this);
}
}

class Derived extends Base
{
private final int a;

Derived(String someParameter)
{
super(hack(someParameter, a = getValueFromDataBase()));
}

private static String hack(String returnValue, int ignored)
{
return returnValue;
}

public String toString()
{
return "a has value " + a;
}
}
< /code>

Примечание: проблема исчезла, когда я перешел от наследования на делегирование, но я все равно хотел бы знать. < /p>

Подробнее здесь: https://stackoverflow.com/questions/156 ... uctor-runs

Вернуться в «JAVA»