Показать сообщение отдельно
  #13 (permalink)  
Старый 11.02.2012, 15:27
Аватар для Shaci
:-/
Отправить личное сообщение для Shaci Посмотреть профиль Найти все сообщения от Shaci
 
Регистрация: 28.09.2009
Сообщений: 1,126

Сообщение от Mахmахmахimus Посмотреть сообщение
Shaci,
спасибо) но я блин знаю что такое приватные методы и публичные) я хочу понять что плохого в том что свойства для внутренних нужд будут доступны снаружи? Как это навредит? Вот в чем суть моего непонимания и этого треда.
зачем тебе делать публичными переменные, которые нужны только для реализации внутренней логики,
да и в любом случае, даже если в классе предусмотрена возможность изменения переменной, то лучше её проводить через публичный метод, а саму переменную сделать приватной, т.к. тогда можно добавить проверку допустимого значения этой переменной в сеттер, к примеру.

Т.е. у тебя есть в классе переменная год.
Если сделаешь её публичной, то год можно будет ввести любой. и неправильный в том числе, и присвоить этой переменной,
но если присваивать ей значение через метод(сеттер), то в этом методе можно ввести проверку правильности даты, и если дата неправильная - присваивать 1900, или 1970 год , например)
Ну и естественно , т.к. переменная теперь private, то если хотим извлекать её значение - то надо и метод для возвращения этой переменной добавить.
Ответить с цитированием