JavaStart
926 subscribers
888 photos
26 videos
596 links
Учи Java вместе с нами!
Наша платформа с курсом - https://javastart.tech
Ютуб с обучающими видео - https://www.youtube.com/@javastart_tech
Download Telegram
Наследование в Java простыми словами. Часть 2.

Правила наследования. Обращение к методу родителя с помощью ключевого слова super.

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

Давайте посмотрим на пример на Картинке. У нас есть класс Pet c public методом walk, который ничего не возвращает (void), но при этом выводит в консоль "I will walk".

Наследуемся от класса Pet классом Cow (корова). У коровы есть свой метод void moo(), который просто выводит в консоль “I will moo”.

Теперь создадим метод cowWalk(), а в нем вызовем уже существующий метод в классе Pet – void walk(), который выводит “I will walk”. Вызываем этот метод мы через ключевое слово super.

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

JavaStart. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
4👍3👨‍💻2
Написать бывшей? А может лучше...

JavaStart. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
😁4👍3💯2
Не все герои носят плащи

JavaStart. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8😁6🔥211
Наследование в Java простыми словами. Часть 3.

Получение доступа к защищенным (protected) элементам и методам.

Если protected (защищен) стоит перед элементами и методами — это указание на то, что к ним можно обратиться из производного класса.

Как видно из примера на Картинке, у нас есть основной класс — Pet — с защищенными name и display. Также есть класс Kitty, который наследуется от класса Pet.
Чтобы обойти эту защиту, мы создали новый объект small класса Kitty и получили необходимый доступ к защищенному полю name и защищенному методу display класса Pet.

Частый вопрос с собеседований.

JavaStart. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍42👨‍💻2
Какой алгоритм безопасности чаще всего применяют для шифрования паролей перед хранением?
Anonymous Quiz
28%
Base64
7%
MD5 без «соли»
44%
BCrypt (с солью и адаптивной сложностью)
6%
CRC-32
14%
Посмотреть ответ
👍53🎉1
Please open Telegram to view this post
VIEW IN TELEGRAM
😁5💯2🤓2👍1👨‍💻1
Какой модуль поставляется с JDK и поддерживает работу с JSON без сторонних библиотек?
Anonymous Quiz
13%
java.json
3%
java.datatransfer
45%
В стандартном наборе такого модуля нет
27%
javax.json
12%
Посмотреть ответ
7👍3🎉2
This media is not supported in your browser
VIEW IN TELEGRAM
🔥4🎉3👍21
Наследование в Java простыми словами. Часть 4.

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

ОШИБКА:

public class X extends Pet, Сow, Cat {
}

Наследуется все, кроме приватных переменных и методов.

В Java модификатор private сообщает о том, что классы-наследники не получат от родителя элементы с таким обозначением. Если вы попробуете произвести extends, компилятор выдаст ошибку.

Как переделать метод класса-родителя?

Override (переопределение) - мощный инструмент, который применяется, когда необходимо изменить или переопределить реализацию метода, полученного от суперкласса.

class Cow extends Pet{
@Override
public void walk (){
System.out.println ("I will run");
}

Важные моменты при использовании @Override:

– Переопределить можно только унаследованные методы;

– Название и параметры метода в родителе и наследнике – одинаковые;

– Методы с обозначением private не переопределяются.

JavaStart. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
3👨‍💻3👍2
Какое ключевое слово запрещает переопределить метод в подклассе?
Anonymous Quiz
12%
static
67%
final
17%
private
1%
sealed
3%
Посмотреть ответ
4👍2🎉2
Please open Telegram to view this post
VIEW IN TELEGRAM
😁6💯3👍1
Java будет продолжать оставаться одним из самых популярных языков программирования, и разработчики на Java будут продолжать пользоваться высоким спросом и конкурентоспособными заработными платами.

Есть на это ряд причин. Давайте разберем:

1) Кроссплатформенность: Java является кроссплатформенным языком программирования, что означает, что программы, написанные на Java, могут запускаться на различных операционных системах без необходимости изменения исходного кода. Это делает Java востребованным для разработки мобильных приложений, веб-приложений и программного обеспечения на различных платформах.

2) Распространенность и стабильность: Java является одним из самых популярных языков программирования, который используется в различных областях, включая корпоративное программное обеспечение, финансовые системы, мобильные приложения, игры и многое другое. Эта популярность обеспечивает стабильный спрос на Java-разработчиков.

3) Богатая экосистема: Java имеет обширную экосистему с различными фреймворками, библиотеками и инструментами, которые значительно упрощают разработку сложных приложений. Это позволяет разработчикам на Java работать более эффективно и быстрее.

4) Надежность и безопасность: Java известна своей высокой надежностью и безопасностью. Она предоставляет механизмы для управления памятью, обработки исключений и контроля доступа к ресурсам, что делает ее предпочтительным выбором для критических систем и проектов, где безопасность играет важную роль.

5) Поддержка и обновления: Java активно поддерживается и обновляется Oracle и широким сообществом разработчиков. Это обеспечивает регулярные улучшения, исправления ошибок и внедрение новых функций, что позволяет приложениям на Java быть актуальными и современными.

6) Высокий спрос на рынке: В связи с распространенностью Java и широким спектром ее применения, опытные Java-разработчики всегда будут востребованы на рынке труда. Высокий спрос обычно ведет к более высоким заработным платам и лучшим условиям труда для разработчиков.

JavaStart. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4👍3💯2
Please open Telegram to view this post
VIEW IN TELEGRAM
😁4💯3👍1
При использовании JUnit, какой метод жизненного цикла выполнится перед каждым тестовым методом?
Anonymous Quiz
1%
Посмотреть ответ
2👍2🔥1😁1👨‍💻1
Please open Telegram to view this post
VIEW IN TELEGRAM
😁4👍2👨‍💻1
Наследование в Java простыми словами. Часть 5.

Как запретить наследование в Java?

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

В результате мы получим ошибку.

На Картинке класс Pet обозначен как final, поэтому класс Kitty не может получить от него ни поля ни переменные.

JavaStart. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
4👍3👨‍💻2
Please open Telegram to view this post
VIEW IN TELEGRAM
😁5🔥32
Что вернёт метод?
Optional<Integer> opt = Optional.empty();
opt.orElseGet(() -> 42);
Anonymous Quiz
3%
null
21%
Optional[42]
7%
Исключение
53%
42
17%
Посмотреть ответ
🎉32👍2