Re[8]: Присвоение свойств и вызов виртуального метода из конструктора
От: sharez  
Дата: 16.11.16 09:00
Оценка:
Здравствуйте, Sharov, Вы писали:

S>Ну правильно, сначала констр. объекты класса, потом используем поля данного класса. В приведенной выше схеме попытка исп. поля до конструкции объекта. Приведенный код весьма прост, а вот если в общем случае будет вызываться метод, который будет использовать поля Parent, а он(Parent) еще не создан.


В схеме с предконструкторами такого быть не может. Любой метод (равно как и само тело метода-конструктора) выполнятся только после выполнения всех предконструкторов. Можно дать возможность переопределять их (но из них вызовы this.method() делать категорически нельзя, только this.property). Заполнение полей дефолтными значениями (включая инициализацию ссылок на поля-объекты таких как protected prop = new ArrayList()) была бы как раз их задача.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.