Так вот мой код:
public MyClass (int y) {
super(y,x,x);
//some code
}
Моя проблема в том, что в этом случае я хочу сгенерировать 'x' и отправить его в конструктор super. Однако вызов суперконструктора должен быть первой строкой в этом конструкторе. Конечно, я мог бы сделать что-то вроде этого:
int x;
{
x = generateX();
}
Но это кажется уродливым, и тогда код будет работать независимо от того, какой конструктор я использую, что не очень приятно. Прямо сейчас я рассматриваю инкапсуляцию всего моего объекта в другой объект, который только вычисляет x и затем запускает этот объект. Это лучший подход?