Java задачи с собеседований
Открыть в Telegram
Задачи, тесты и теоретические вопросы по JAVA. Репозиторий: https://github.com/proghub-official/java-interview Прислать задачу/вопрос в дар: @cyberJohnny Сотрудничество: @cyberJohnny
Больше5 885
Подписчики
-124 часа
-87 дней
-2830 день
Архив постов
⚙️ Character.getType()
Character.getType() возвращает тип символа по его Unicode-категории, например, буква, цифра, пунктуация и т.д. Это полезно для фильтрации и анализа текста, особенно в мульти-язычных или валидационных системах.
👩💻
@javaquiz
⚙️ ProcessHandle.descendants()
ProcessHandle.descendants() возвращает поток потомков (дочерних процессов) данного процесса. Это полезно для мониторинга и управления иерархией процессов, например, при запуске подпроцессов через ProcessBuilder.
👩💻
@javaquiz
😨SQL для QA без страха: как тестировщик перестал бояться и полюбил SQL?
Хочешь перестать бояться баз данных и наконец понять, как QA работают с SQL в реальных проектах?
На занятии ты узнаешь, что такое SQL, зачем он нужен тестировщику и как с его помощью проверять данные, искать ошибки и подтверждать фиксы.
Мы разберём самые важные операции, которые нужны тестировщику каждый день:
- выборка данных через SELECT
- поиск нужных строк с WHERE
- сортировка и анализ через ORDER BY и GROUP BY
- первые шаги к обновлению данных
На практике покажем, как запросами проверять корректность данных, находить ошибки и подтверждать работу функционала.
Регистрация и подробности о курсе: https://clck.ru/3QWvNQ
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
⚙️ Arrays.mismatch()
Arrays.mismatch() сравнивает два массива и возвращает индекс первого несовпадающего элемента. Это полезно для эффективного поиска различий между данными.
👩💻
@javaquiz
👩💻 Ваши Java-приложения под нагрузкой едва дышат? Профилирование и оптимизация кода остаются за скобками?
🎯 Курс «Java Developer. Advanced» от OTUS — это глубокое погружение в устройство JVM, байткод, сборщики мусора, профилирование и оптимизацию в облаке.
Наши эксперты-практики покажут, как выбрать GC, снять дамп памяти и обнаружить утечки, как профилировать “горячие” места, настраивать интеграцию с Prometheus & Grafana и деплоить сервисы в Kubernetes.
✔️ Вы научитесь обосновывать выбор JVM-имплементации, анализировать heap-дампы, синхронизировать потоки, использовать Reactor и неблокирующие I/O, проектировать метрики и трассировку.
➡️ Пройдите короткий тест и присоединяйтесь к группе: https://clck.ru/3QSBiT
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
⚙️ LockSupport.parkNanos()
LockSupport.parkNanos() позволяет приостанавливать поток на заданное количество наносекунд, обеспечивая более точный контроль пауз по сравнению с Thread.sleep().
👩💻
@javaquiz
⚙️ Cleaner.register()
Cleaner.register() позволяет выполнять код очистки перед удалением объекта сборщиком мусора. Это полезно для освобождения нативных ресурсов без явного вызова close().
👩💻
@javaquiz
👩💻 Spring Boot + Kafka
Приглашаем на открытый урок.
🗓 26 ноября в 20:00 МСК
🆓 Бесплатно. Урок в рамках старта курса «Java Developer. Professional».
Программа вебинара:
✔️ Введение в Kafka: топики, партиции, транзакции.
✔️ Простое приложение на Spring Boot: надежная отправка и получение сообщений.
Вебинар будет полезен:
Java-разработчикам и backend-инженерам, начинающим работать с Kafka.
В результате вебинара:
Получите базовые знания по Kafka и сможете написать клиента на Spring Boot для отправки и приема сообщений.
🔗 Ссылка на регистрацию: https://clck.ru/3QQL6R
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
⚙️ Thread.sleep(Duration)
Thread.sleep(Duration) (Java 9+) позволяет приостанавливать выполнение потока на заданное время с использованием Duration, что делает код более читаемым и удобным.
👩💻
@javaquiz
Неожиданное введение в Spring MVC
Spring MVC кажется сложным — пока не поймёшь, как он вырос из обычных сервлетов. На вебинаре шаг за шагом соберём свой первый фреймворк и разберёмся, зачем нужен MVC.
Приглашаем на открытый урок.
📅 Встречаемся 24 ноября в 20:00 мск.
Расскажет Александр Оруджев — Senior Software Engineer. Встречаемся на бесплатном практическом уроке от OTUS, где вы вместе с опытным экспертом разберете:
• как сервлеты превратились в контроллеры;
• что делает Spring под капотом;
• как построить собственный мини-MVC и понять принципы работы фреймворка.
После вебинара вы:
— поймёте архитектуру MVC без заучивания;
— перестанете бояться Spring MVC и начнёте использовать его осознанно;
— сделаете первый шаг к системному пониманию backend-разработки.
24 ноября в 20:00 открытый урок проходит в преддверие старта курса «Разработчик на Spring Framework». Все участники получат скидку на обучение.
👉 Регистрация бесплатная, но количество мест ограничено — успей занять своё место:
https://clck.ru/3QNugW
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
👀 Мониторинг использования памяти с MemoryMXBean
В Java можно отслеживать текущее потребление памяти JVM с помощью MemoryMXBean. Это полезно для диагностики утечек памяти и анализа работы сборщика мусора.
✔️ Использование ManagementFactory.getMemoryMXBean() позволяет получить информацию о потреблении памяти в реальном времени.
👩💻
@javaquiz
🔍 Завтра тестовое собеседование с Java-разработчиком
19 ноября(уже завтра!) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Java-разработчика.
Как это будет:
📂 Сергей Чамкин, старший разработчик из Uzum, ex-WildBerries, будет задавать реальные вопросы и задачи разработчику-добровольцу
📂 Cергей будет комментировать каждый ответ респондента, чтобы дать понять чего от вас ожидает собеседующий на интервью
📂 В конце можно будет задать любой вопрос Сергею
Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Java-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.
Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_sh_bot
Реклама.
О рекламодателе.
⚙️ Thread.getAllStackTraces()
Thread.getAllStackTraces() позволяет получить стек вызовов всех активных потоков. Это полезно для отладки многопоточных программ и анализа зависших потоков.
👩💻
@javaquiz
Кризис в диджитал
Все говорят о кризисе: бюджеты режут, рынок сжимается, конкуренция растёт. В digital это ощущается сильнее всего – давление на эффективность и сроки стало нормой. Но паника ничего не меняет.
Мы видим ситуацию иначе. Когда рынок штормит, выигрывают не те, у кого больше ресурсов, а те, кто умеет быстро перестраиваться, усиливать процессы и работать точнее.
Мы знаем, как проходить спад: что оптимизировать, что автоматизировать, какие метрики реально важны, что помогает удерживать клиентов, а что – только создаёт иллюзию контроля.
В итоге несколько авторов digital-каналов решили объединиться и собрать всё полезное в одну папку — «Документы для тех, кто в digital»
🔴 Там 30 файлов, которые помогают выстроить управление, аналитику и внутренние процессы:
– Мотивация сотрудников в IT,
– Контроль сроков диджитал-проекта,
– Шаблон CSI,
– Фреймворк для проведения исследований через ИИ,
– Как создать продающее КП.
📂 Ссылка на папку: https://t.me/addlist/mUVeZHwtrzc0NWYy
А чтобы добавить немного азарта — среди подписавшихся разыграют:
🥇 iPhone Air;
🥈 Яндекс Станцию Лайт 2;
🥉 HUAWEI Freebuds 5.
Как участвовать:
1. Подпишись на папку: https://t.me/addlist/mUVeZHwtrzc0NWYy
2. Подтверди участие в боте
🗓 Итоги — 25 ноября.
⚙️ InetAddress.getByAddress()
InetAddress.getByAddress() позволяет создать IP-адрес вручную из массива байтов, без необходимости использования DNS-резолвера. Это полезно для работы с сетевыми протоколами и тестирования.
👩💻
@javaquiz
⚙️ Micronaut
Micronaut — это лёгкий фреймворк для микросервисов, который быстро стартует, потребляет мало памяти и поддерживает компиляцию в нативные образы через GraalVM.
🔗 Документация (https://micronaut.io/)
👩💻
@javaquiz
🎥 Открытый урок «Java Memory Model: как синхронизировать потоки».
🗓 20 ноября в 20:00 МСК
🆓 Бесплатно. Урок в рамках старта курса «Java Developer. Advanced».
JMM определяет, как JVM видит память: что наблюдают потоки и где нужна синхронизация — база корректного многопоточного кода.Что будет на вебинаре: ✔️ Схематичное устройство памяти и взаимодействие с ядрами процессора. ✔️ Проблемы многопоточности: memory ordering, data race, race condition. ✔️ Правило happens-before и его практическое применение. ✔️ Какие гарантии дают synchronized и volatile. В результате вебинара вы: - Научитесь распознавать проблемный многопоточный код и понимать, где применять synchronized и volatile для корректной синхронизации. Кому будет интересно: Java-разработчикам и инженерам, работающим с многопоточностью и производительностью. 🔗 Ссылка на регистрацию: https://clck.ru/3QCBSA Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
⚙️ ProcessBuilder.redirectOutput()
ProcessBuilder.redirectOutput() позволяет перенаправлять стандартный вывод (stdout) запускаемого процесса в файл или в другой поток. Это полезно при работе с внешними процессами и логированием их вывода.
🔗 Документация (https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/ProcessBuilder.html#redirectOutput(java.io.File))
👩💻
@javaquiz
⚙️ FileDescriptor.sync()
FileDescriptor.sync() в Java позволяет принудительно записать все несохранённые данные из буфера операционной системы на диск. Это полезно для обеспечения целостности данных в случае сбоя или отключения питания.
🔗 Документация (https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/FileDescriptor.html#sync())
👩💻
@javaquiz
⚙️ VarHandle.compareAndExchange()
VarHandle.compareAndExchange() позволяет атомарно обновлять значения переменной, только если текущее значение соответствует ожидаемому. Это полезно для реализации lock-free структур данных и многопоточной синхронизации.
🔗 Документация (https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/invoke/VarHandle.html#compareAndExchange(T,...))
👩💻
@javaquiz
Уже доступно! Исследование Telegram 2025 — ключевые инсайты года 
