Java задачи с собеседований
6.27K subscribers
595 photos
6 videos
19 files
244 links
Задачи, тесты и теоретические вопросы по JAVA.

Репозиторий: https://github.com/proghub-official/java-interview
Прислать задачу/вопрос в дар: @cyberJohnny
Сотрудничество: @cyberJohnny
加入频道
Collections.disjoint() определяет, есть ли у двух коллекций общие элементы. Это полезно для фильтрации, сравнения и улучшения поиска пересечений.

👩‍💻

@javaquiz
⚙️ Collections.nCopies()

Метод Collections.nCopies() создает неизменяемый список, который содержит определенное количество копий одного и того же объекта. Это может быть полезно для инициализации, создания заглушек и формирования шаблонных коллекций.

👩‍💻

@javaquiz
⚙️ Class.getRecordComponents()

Class.getRecordComponents() предоставляет информацию о компонентах записи. Это полезно для рефлексии, сериализации и автоматического отображения данных в классах Record.

👩‍💻

@javaquiz
⚙️ Pattern.asPredicate()

Pattern.asPredicate() преобразует регулярное выражение в Predicate, который можно применять непосредственно в потоках (Stream). Это удобно для фильтрации строк без необходимости явного вызова .matches().

👩‍💻

@javaquiz
ClassLoader.getResources() ищет все ресурсы с заданным именем в classpath и возвращает Enumeration. Это полезно для загрузки всех версий конфигурационных файлов, плагинов или ресурсов из JAR-файлов и папок одновременно. 👩‍💻

@javaquiz
⚙️ Class.getNestMembers()

Class.getNestMembers() возвращает массив всех классов, которые принадлежат одной «группе вложенности» (nest) — то есть тем классам, которые могут обмениваться приватными методами и полями. Это полезно для анализа доступа между вложенными классами и для инструментов анализа байткода.

👩‍💻

@javaquiz
🚫 Антипаттерн недели: Нарушение принципа инкапсуляции через public поля

В Java открытие полей класса как public — это плохая практика. Это нарушает инкапсуляцию и делает объект уязвимым к неконтролируемым изменениям извне.

✔️ Используйте private поля и методы getter/setter для доступа и контроля над значениями.

👩‍💻

@javaquiz
🤖 Хотите автоматизировать инфраструктуру для тестирования прямо в Gradle?

На открытом уроке «Облако в кармане: запускаем всю инфраструктуру для теста при сборке» от OTUS мы расскажем, как избежать ручных настроек и запусков. Вместо этого вы научитесь автоматизировать весь процесс с помощью Docker, DockerCompose и TestContainers, интегрируя их с Gradle.

Урок полезен для разработчиков на Kotlin и Java, которые работают с автотестами — интеграционными и end-to-end.

В ходе урока вы освоите:
▫️Автоматический запуск всей необходимой инфраструктуры для тестирования.
▫️Создание Docker-образов для тестов и деплоя.
▫️Разработку автотестов, которые поднимут ваши навыки на новый уровень.

Участники получат скидку на курс «Kotlin Backend Developer. Professional».

➡️ Встречаемся 29 апреля в 20:00 МСК, регистрация открыта: https://clck.ru/3LegM4

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
➡️ Строковые шаблоны (Preview)

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

🗣️ Ранее используемая в Java конкатенация приводила к сложному коду, тогда как строковая интерполяция в других языках сокращает код, но увеличивает риски безопасности.

ℹ️ Шаблонные выражения объединяют лаконичность интерполяции и высокую безопасность.

String name = "Joan";
String info = STR."My name is \{name}";
assert info.equals("My name is Joan"); // true

Это выражение использует обработчик STR и встроенное выражение {name}, которое может включать строки, арифметику, методы и поля. Обработчики выполняются динамически и обеспечивают безопасность кода. Шаблоны не работают без обработчика, который отвечает за интерполяцию и валидацию.

👩‍💻

@javaquiz
⚙️ System.identityHashCode()

System.identityHashCode() возвращает хеш-код объекта, который основывается на его настоящем адресе в памяти, независимо от того, был ли переопределён метод hashCode(). Это полезно для диагностики, отладки, отслеживания объектов и работы с объектами, у которых метод hashCode() был переопределён нестандартным образом.

👩‍💻

@javaquiz
⚙️ Integer.rotateLeft()

Integer.rotateLeft() осуществляет циклический сдвиг битов числа влево. Это может быть полезно для быстрой генерации хеш-функций, в криптографии и в некоторых алгоритмах обработки битов.

👩‍💻

@javaquiz
⚙️ Class.getPermittedSubclasses()

Class.getPermittedSubclasses() предоставляет перечень всех классов, которым разрешено наследование от sealed-класса. Это полезно для анализа и проверки иерархий sealed-типов во время выполнения, особенно в системах с плагинами и фреймворках.

👩‍💻

@javaquiz
🤖 А ты справишься с тестом по Kotlin?

🏆 Пройди тест из 10 вопросов, проверь свой уровень знаний и получи скидку на онлайн-курс «Kotlin Backend Developer. Professional» от OTUS!

Если успешно пройдешь тест, сможешь забронировать место в группе по выгодной цене! И еще дарим промокод Kotlin5

🎫
Курс можно приобрести в рассрочку

➡️ Пройти тест и забрать скидку: https://clck.ru/3Lk8vc

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
➡️ Сила коллекций: Неизменяемые коллекции в Java

Java 10 представила удобную функцию, позволяющую создавать неизменяемые копии коллекций с использованием новых методов copyOf.

✔️ Эти методы обеспечивают легкий способ создания неизменяемых версий существующих коллекций, что способствует повышению безопасности и надежности кода.

👩‍💻

@javaquiz
⚡️ Квиз на знание Java

Пройти тестирование — сложно! А ты справишься?
21 вопрос, 30 минут

Проверь себя - пройди квиз и оцени свой уровень навыков, а также свою готовность к обучению на курсе — «Разработчик на Spring Framework» от OTUS.

💻 За 5 месяцев обучения ты освоишь современные возможности Spring, научишься быстро проходить путь от идеи до production-grade, создавать Web-приложения на микросервисной архитектуре и решать высокоуровневые задачи по разработке.

👉 ПРОЙТИ ТЕСТ: https://clck.ru/3LkAQs

Если успешно пройдешь тест, сможешь забронировать место в группе по выгодной цене! И еще дарим промокод Spring5

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM