2341
Sparx / Re: Enterprise Architect: Практика использования
« : 06 Февраля 2009, 14:37:40 »
Ну разобрались с Ирой. Я перепутал private с protected:
Так что ИМХО это баг ЕА.
Эд, если не сложно, зашли в поддержку ЕА запрос:
Цитировать
private – Член класса может использоваться только функциями-членами данного класса и функциями-"друзьями" своего класса. В производном классе он недоступен.В общем, по ООП в дочернем\производном Классе не должны быть видны private и package атрибуты родительского Класса, если дочерний Класс находится в другом пакете.
protected – То же, что и private, но дополнительно член класса с данным атрибутом доступа может использоваться функциями-членами и функциями-"друзьями" классов, производных от данного.
Так что ИМХО это баг ЕА.
Эд, если не сложно, зашли в поддержку ЕА запрос:
Цитировать
Pls clarify my 2 quesions:
1. I add private and package attributes into Class A. Then create new Class B into another package and Class B inherits from Class A by using generalization connection. Set check box at Frature visibality -> Inherited Features -> Show attributes of Class B. And finally I see private and package attributes of Class A at Class B. According to OO Programming rules private and package attributes should not be visible into inherited Class. How to avoid visibility of private and package attributes at inherited Class?
2. When I generate RTF report of Class B then report does not have inherited protected and public attributes of Class A. How to include inherited attributed into report?