Зачем нужно ключевое слово default?
Изначально (с Java 1.5) это слово использовалось для объявления дефолтного значения элементов аннотации.
В Java 8 вместе с лямбдами и стримами появилась острая необходимость дополнить стандартные интерфейсы новыми методами. Никто естественно не собирался ломать обратную совместимость, и было предложено добавить методы по умолчанию.
Теперь добавление ключевого слова default к методу интерфейса позволяет добавить ему тело. Все новые методы старых интерфейсов снабжаются дефолтной реализацией.
В реализации такого метода его дефолтный вариант вызывается тем же синтаксисом, что и внешний класс из вложенного: InterfaceName.super.methodName().
Методы по умолчанию подошли еще на шаг к введению в Java беспроблемной версии множественного наследования – примесям (mixin). Интерфейс не может иметь состояния, поэтому полноценные примеси всё ещё недоступны.
@javatasks #java
Изначально (с Java 1.5) это слово использовалось для объявления дефолтного значения элементов аннотации.
В Java 8 вместе с лямбдами и стримами появилась острая необходимость дополнить стандартные интерфейсы новыми методами. Никто естественно не собирался ломать обратную совместимость, и было предложено добавить методы по умолчанию.
Теперь добавление ключевого слова default к методу интерфейса позволяет добавить ему тело. Все новые методы старых интерфейсов снабжаются дефолтной реализацией.
В реализации такого метода его дефолтный вариант вызывается тем же синтаксисом, что и внешний класс из вложенного: InterfaceName.super.methodName().
Методы по умолчанию подошли еще на шаг к введению в Java беспроблемной версии множественного наследования – примесям (mixin). Интерфейс не может иметь состояния, поэтому полноценные примеси всё ещё недоступны.
@javatasks #java
🔥9❤2👍1
В каком порядке указываются модификаторы?
Правила применения модификаторов поля описаны в JLS 8.3.1:
🔘 Нельзя указывать один модификатор дважды;
🔘 Нельзя использовать несколько модификаторов доступа одновременно.
Порядок указания вообще свободный, но обычно используется следующий:
@Аннотации, доступ,
Требования для модификаторов метода находятся в JLS 8.4.3:
🔘 Те же требования, что и к полю;
🔘 Совместно с abstract кроме аннотаций можно использовать только protected или public;
🔘 native метод не может использовать strictfp.
И так же не требуется, но рекомендуется использовать такой порядок:
@Аннотации, доступ,
@javatasks #java
Правила применения модификаторов поля описаны в JLS 8.3.1:
🔘 Нельзя указывать один модификатор дважды;
🔘 Нельзя использовать несколько модификаторов доступа одновременно.
Порядок указания вообще свободный, но обычно используется следующий:
@Аннотации, доступ,
static final transient volatile
Требования для модификаторов метода находятся в JLS 8.4.3:
🔘 Те же требования, что и к полю;
🔘 Совместно с abstract кроме аннотаций можно использовать только protected или public;
🔘 native метод не может использовать strictfp.
И так же не требуется, но рекомендуется использовать такой порядок:
@Аннотации, доступ,
abstract static final synchronized native strictfp
@javatasks #java
👍8🔥3❤1👏1
Какая строка инициализации приведёт к ошибке?
Anonymous Quiz
45%
1
4%
2
5%
3
29%
4
17%
Ошибки не будет
👍12🔥3❤1
Schema Registry: сделайте свою работу с Kafka стабильной и удобной
Apache Kafka — ваш инструмент для работы с большими данными. Но как сделать её использование ещё удобнее? Разберёмся с реестром схем (Schema Registry) 19 декабря в 20:00 мск на открытом уроке.
Узнайте, как управлять эволюцией схем в приложениях Kafka и почему это ключ к стабильным и масштабируемым проектам.
Если вы хотите научиться работать с Apache Kafka или уже используете её, но не знаете, как внедрить Schema Registry, этот вебинар поможет навести порядок в данных и оптимизировать процессы.
Спикер Евгений Непомнящий — опытный разработчик и преподаватель.
Регистрируйтесь и получите скидку на большое обучение «Apache Kafka»: https://vk.cc/cFRQWR
Apache Kafka — ваш инструмент для работы с большими данными. Но как сделать её использование ещё удобнее? Разберёмся с реестром схем (Schema Registry) 19 декабря в 20:00 мск на открытом уроке.
Узнайте, как управлять эволюцией схем в приложениях Kafka и почему это ключ к стабильным и масштабируемым проектам.
Если вы хотите научиться работать с Apache Kafka или уже используете её, но не знаете, как внедрить Schema Registry, этот вебинар поможет навести порядок в данных и оптимизировать процессы.
Спикер Евгений Непомнящий — опытный разработчик и преподаватель.
Регистрируйтесь и получите скидку на большое обучение «Apache Kafka»: https://vk.cc/cFRQWR
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
👍3❤2🔥2👏1
Что выведет данный фрагмент кода?
Anonymous Quiz
52%
true
42%
false
4%
Ошибка компиляции
2%
RuntimeException
🥴11👍7🔥4❤3😁2
Бесплатный интенсив: Java-разработчик: старт в профессии с нуля.
📆 Когда: 21-22 декабря в 14:00 по мск.
За два дня интенсива в прямом эфире, под руководством опытного Java-разработчика, вы сможете:
✔️ Познакомиться с синтаксисом и основными конструкциями языка Java.
✔️ Написать свой первый проект и определить, подходит ли вам профессия разработчика.
✔️ Создать консольное приложение на Java с интеграцией API Яндекс.Карт для построения маршрутов и поиска информации.
✔️ Узнать ответы на интересующие вас вопросы.
✔️ Получить доступ к закрытому профессиональному сообществу.
🎁 Подарки для участниковинтенсива: гайд «Как заговорить на сленге IT-специалистов», карта компетенций начинающего Java-разработчика и доступ в закрытое сообщество «Старт в Java» от Хекслета!
📆 Когда: 21-22 декабря в 14:00 по мск.
За два дня интенсива в прямом эфире, под руководством опытного Java-разработчика, вы сможете:
✔️ Познакомиться с синтаксисом и основными конструкциями языка Java.
✔️ Написать свой первый проект и определить, подходит ли вам профессия разработчика.
✔️ Создать консольное приложение на Java с интеграцией API Яндекс.Карт для построения маршрутов и поиска информации.
✔️ Узнать ответы на интересующие вас вопросы.
✔️ Получить доступ к закрытому профессиональному сообществу.
🎁 Подарки для участниковинтенсива: гайд «Как заговорить на сленге IT-специалистов», карта компетенций начинающего Java-разработчика и доступ в закрытое сообщество «Старт в Java» от Хекслета!
❤3👍3🔥2
👍Научитесь писать проверки для своего проекта, правильно подсвечивать в IDE и репортить найденные инциденты!
На бесплатном уроке онлайн-курса «Android Developer. Professional» — «Android Lint»: регистрация
Что будет на вебинаре?
- Подробно рассмотрим API Android Lint и PSI/UAST деревья
- Научимся реализовывать свои Detector'ы
- Научимся тестировать реализованные Detector'ы
Каким слушателям вебинар будет полезен?
- Инженерам, которые интересуются статическим анализом, хотят автоматизировать поиск codesmell'ов, проверку кодстайла, проверку принятых в проекте регламентов.
🔥После вебинара вы сможете продолжить обучение на курсе по спеццене, в том числе, в рассрочку.
erid: LjN8JwaSF
На бесплатном уроке онлайн-курса «Android Developer. Professional» — «Android Lint»: регистрация
Что будет на вебинаре?
- Подробно рассмотрим API Android Lint и PSI/UAST деревья
- Научимся реализовывать свои Detector'ы
- Научимся тестировать реализованные Detector'ы
Каким слушателям вебинар будет полезен?
- Инженерам, которые интересуются статическим анализом, хотят автоматизировать поиск codesmell'ов, проверку кодстайла, проверку принятых в проекте регламентов.
🔥После вебинара вы сможете продолжить обучение на курсе по спеццене, в том числе, в рассрочку.
erid: LjN8JwaSF
👍3🔥1
Что выведет данный код?
Anonymous Quiz
58%
-127
13%
129
3%
51
14%
Ошибка компиляции
13%
ArithmeticException
👍8🔥7
Недавно в Кубере? Сложновато?
Ребята из Рег.ру составили пошаговый гайд для начинающих DevOPS и просто любопытных. Изучаем!
Ребята из Рег.ру составили пошаговый гайд для начинающих DevOPS и просто любопытных. Изучаем!
👍4❤2🔥2👏1
👍11🔥3⚡2
Блиц-тестирование на грейд в Java
Менторы ШОРТКАТ собрали полезный небольшой тест, который поможет тебе проверить знания.
Конечно, это не определит грейд точно, но даст понять, какие темы западают. За прохождение ещё и дадут скидку на менторство.
Переходи в бот, чтобы пройти тест: @shortcut_sh_bot
Реклама. ООО "ШОРТКАТ", ИНН: 9731139396, erid: 2VtzqupXpmF
Менторы ШОРТКАТ собрали полезный небольшой тест, который поможет тебе проверить знания.
Конечно, это не определит грейд точно, но даст понять, какие темы западают. За прохождение ещё и дадут скидку на менторство.
Переходи в бот, чтобы пройти тест: @shortcut_sh_bot
Реклама. ООО "ШОРТКАТ", ИНН: 9731139396, erid: 2VtzqupXpmF
👍5🔥2
Как оптимизировать код?
Anonymous Quiz
42%
Использовать Мар для хранения скидок
52%
Использовать switch-case
0%
Добавить новые условия
3%
Применить цепочку тернарных операторов
2%
Использовать регулярные выражения
👍11🥴7☃3🔥3🤨1
This media is not supported in your browser
VIEW IN TELEGRAM
Хочешь вывести карьеру на новый уровень?
Прояви себя в Лиге Цифровой Экономики!
У нас ты:
- Станешь частью команды профессионалов, работающих над амбициозными проектами
- Получишь возможность реализовать творческий потенциал и внести свой вклад в развитие ключевых отраслей
- Будешь работать над сложными и интересными задачами, которые позволят расширить твои знания и навыки
- Сможешь влиять на развитие компании и рынка, участвуя в масштабных внедрениях
Не упусти шанс стать частью команды, которая меняет мир ИТ!
Подписывайся на наш канал и узнай все о наших вакансиях и проектах.
https://tglink.io/6b23b4b3dae1?erid=LjN8JuFb3
Реклама. ООО "ЭЙТИ КОНСАЛТИНГ". ИНН 7715744096.
Прояви себя в Лиге Цифровой Экономики!
У нас ты:
- Станешь частью команды профессионалов, работающих над амбициозными проектами
- Получишь возможность реализовать творческий потенциал и внести свой вклад в развитие ключевых отраслей
- Будешь работать над сложными и интересными задачами, которые позволят расширить твои знания и навыки
- Сможешь влиять на развитие компании и рынка, участвуя в масштабных внедрениях
Не упусти шанс стать частью команды, которая меняет мир ИТ!
Подписывайся на наш канал и узнай все о наших вакансиях и проектах.
https://tglink.io/6b23b4b3dae1?erid=LjN8JuFb3
Реклама. ООО "ЭЙТИ КОНСАЛТИНГ". ИНН 7715744096.
👍3🔥2