Translations:Developers/Object oriented programming in PHP/Properties/14/ru


 * public : опасно декларировать свойство, как public, так как каждый сможет в любое время изменить его, а после инициализации свойства контроль над ним будет потерян. Поэтому не используйте для свойств ключевое слово public!
 * protected : свойства, объявленные как protected, могут быть доступны лишь в определении текущего класса или в его субклассах. Следовательно, не только каждый метод класса может оперировать со свойством protected, но и все методы в его субклассах. А это может вести к несовместимости кода, когда субклассы переназначают protected свойства своих суперклассов. Используйте это крайне внимательно.
 * private : все свойства необходимо декларировать как private, чтобы быть уверенным, что оперировать ими могут лишь методы собственного класса в его определении. Декларируемые как private свойства доступны только изнутри определения класса, исключены из наследования субклассами и, таким образом, не могут быть переназначены. А это улучшает и согласованность и безопасность кода.