Найти в Дзене
Design or lose

С нуля до разработчика Java ( день 9-ый )

И так , после двух дневного отдыха , я готов приступить к дальнейшему изучению. Но сперва хотелось бы рассказать почему отдых действительно нужен. Из примера личной жизни могу сказать что если вы не отдыхаете и вырабатываете все свои ресурсы за день , очень долгое время , то скорее всего вы выгорите и не захотите заниматься тем делом , что зажгло в вас искру. В своё время на этом погорел и год не мог отойти. По этому всегда находите время на себя и на отдых. Иногда после паузы появляются новые силы и идеи. Ну а теперь давайте перейдём к статье. Прошлая статься В прошлой статье мы поняли что такое конструкторы , методы и параметры в них. Если хотите ознакомится вот ссылка. Ну а мы продолжаем внедрение в ООП. Сегодня мы изучим доступы и почему нужно ограничивать их. Ну а так же несколько приятных фишечек которым я научился. Доступы И так доступы. Я думаю всем понятно что права доступа - это права которые позво
Оглавление

И так , после двух дневного отдыха , я готов приступить к дальнейшему изучению. Но сперва хотелось бы рассказать почему отдых действительно нужен. Из примера личной жизни могу сказать что если вы не отдыхаете и вырабатываете все свои ресурсы за день , очень долгое время , то скорее всего вы выгорите и не захотите заниматься тем делом , что зажгло в вас искру. В своё время на этом погорел и год не мог отойти. По этому всегда находите время на себя и на отдых. Иногда после паузы появляются новые силы и идеи. Ну а теперь давайте перейдём к статье.

Прошлая статься

В прошлой статье мы поняли что такое конструкторы , методы и параметры в них. Если хотите ознакомится вот ссылка. Ну а мы продолжаем внедрение в ООП. Сегодня мы изучим доступы и почему нужно ограничивать их. Ну а так же несколько приятных фишечек которым я научился.

Доступы

И так доступы. Я думаю всем понятно что права доступа - это права которые позволяют нам пользоваться чем либо , а если прав у нас нет , то пользоваться мы этим соответственно не можем.

Но так ли это в программирование? И да и нет. Как же так?

Ну давайте сперва перейдём на примеры и в дальнейшем определим эти тонкости.

Создадим программу Machine и дадим значение из чего будет состоять класс Машина.

Мы будем объяснять доступы и поэтому возьмём и создадим простую пародию на ключ зажигания и педаль газа.

Создаем публичный конструктор Machine
Создаем публичный конструктор Machine

Тут мы создали конструктор Machine и сделали его публичным , а так же добавили метод void keyStart в котором если ключ равен 12345 , то машина заводится , а если нет то ключ не верный.

Давайте создадим машину и обратимся к методу.

Main
Main

Тут мы создали машину , присвоили ей значения ключа 12345 и обращаемся к методу keyStart.

Итог
Итог

Тут мы видим текст что машина завелась.
Ну естественно если мы дадим машине другой ключ , то нам выдаст текст что ключ не верный.

Но причем тут права доступа?
Простой пример из жизни , аппарат с напитками и снеками. Представьте что аппарат стал открыт и каждый покупатель берет столько - сколько ему нужно и кладёт такое количество денег , сколько считает нужным. Я не думаю что такой аппарат долго бы прожил , и именно по этому его оснащают защитным экраном , а доступ к продуктам осуществляется с помощью кнопочек , сенсоров и терминала оплаты. Тут то же самое , мы должны создать кнопочки для пользователя и ограничить его доступ в той или иной части кода , что бы человек понимал что ему нужно тыкнуть и к чему это приведет. Давайте рассмотрим это на примере педали газа в нашем коде.

private and final
private and final

Мы уже видели классы public , private , static , но еще не видели команду final.

Если говорить просто то public - это доступ , который можно получить из любой точки программы. Код с public открыт и есть возможность ее редактировать не только из этого места.

Private - доступ , который ограничивает редактирование не из основного класса Java , вы не сможете дать значение методам не внутри класса и метода.

Static - привязывает что либо к этому классу , т.е. что бы обратиться к методу нужно писать Classname.staticname ();

Final - обозначает что значение конечно и его нельзя изменить.

Тут мы использовали публичный класс Машина, приватную педаль газа - доступ к которой мы получаем с помощью геттеров и сеттеров , а так же приватный неизменяемый ключ от машины.

Давайте изучать код дальше .

Сеттеры и геттеры
Сеттеры и геттеры

Сеттеры и геттеры , что это такое?
Сеттер - это своего рода меню ввода , к которому имеет доступ конечный пользователь , с помощью сеттера можно изменять значения педали газа , а с помощью геттера мы получаем информацию об этой педали.

Своего рода сеттеры и геттеры - это кнопки на автомате с выдачей еды. Вы задаёте номер снека который вы хотите получить и после оплаты вы вызываете метод геттера.

Перейдём в Main

Main
Main

Тут мы видим что я создал машину , дал ей верный ключ и несколько раз вызвал методы сеттеров и геттеров.
Давайте посмотрим на итог.

Итог
Итог

И мы видим что машина действительно завелась , машина едет несколько раз в те направления по которым я указал числа ( что бы при отрицательном значении минус не отображался я просто умножил его на -1 ) .

Фишечки

Сюда я отнесу несколько горячих клавиш и сокращений для ускорения написания кода.
1) psvm - (нужно ввести) создает метод входа в программу public static void main .

2) sout - (нужно ввести) создаем метод System.out.println();

3)alt + 0 - позволяет создавать конструкторы , сеттеры и геттеры автоматически , что бы не писать все это вручную

4) alt + ctrl + L - делает код красивее синтаксически.

Как я прочитал - если вы можете ограничить доступ к чему либо - то его надо ограничивать и открывать доступ только туда , куда пользователю действительно нужно нажимать и использовать.

На сегодня все , в следующей статье мы обсудим коллекции и работу с папками - это не менее важно чем написание самого кода.
Для новых программистов нужно запомнить правило - код нужно писать так , что бы другой программист его понял.

Подписывайтесь на канал , следите за новостями и вступайте в сообщество новых разработчиков , давайте развиваться вместе!

Красивая фоточка в конце). Ставь лайк - это поднимет мне мотивацию делать для вас контент.
Красивая фоточка в конце). Ставь лайк - это поднимет мне мотивацию делать для вас контент.