Цитата:
|
А теперь, например, нужно реализовать еще две задачи, связанные с обращением "снизу вверх".
|
Не нужно. Нет никакой нужды экземпляру обращаться к родителям, иметь на них ссылку и дергать их методы. Такой ребенок очень плох. Ребенок не может выбирать себе родителей; ребенок должен быть спроектирован так, чтобы любой другой класс мог стать его родителем (то есть использовать его в своих целях), не создавая при этом целый завод методов и свойств для ублажения такого ребенка. Представьте, что класс Math, например, требовал бы для его использования в Ваших классах создавать специальные методы и публичные свойства для обеспечения своей работы. Смешно? Вспомните, есть ли хоть один класс во всей родной библиотеке, который бы требовал подобного — наличия определенных свойств и методов у использующего его класса.
Если же сильно приспичило обратиться к Документ-классу, и никакой нормальной архитектуры в голову не приходит, можете смело пользоваться ссылкой root из любого ДисплейОбжекта.