es
Feedback
Java задачи с собеседований

Java задачи с собеседований

Ir al canal en Telegram

Задачи, тесты и теоретические вопросы по JAVA. Репозиторий: https://github.com/proghub-official/java-interview Прислать задачу/вопрос в дар: @cyberJohnny Сотрудничество: @cyberJohnny

Mostrar más
5 889
Suscriptores
-124 horas
-87 días
-2830 días
Archivo de publicaciones
Тест на внимательность. Перед вами фрагмент кода из проекта Huawei Cloud. Где здесь ошибка?
@Override
public void putToCache(PutRecordsRequest putRecordsRequest) {
  .... 
  if (dataTmpFile == null || !dataTmpFile.exists()) {
    try {
      dataTmpFile.createNewFile();
    }
    catch (IOException e) {
      LOGGER.error("Failed to create cache tmp file, return.", e);
      return;
    }
  }
  ....
}
Ошибка допущена в условии dataTmpFile == null || !dataTmpFile.exists() Если dataTmpFile — null, то исполнение перейдёт в then-ветвь оператора if, где произойдёт разыменование нулевой ссылки. Задачка из квиза на поиски ошибок в Java коде, опубликована на сайте PVS-Studio.

➡️ Vaadin Flow — фреймворк для веб-приложений на чистой Java Vaadin Flow — это фреймворк для создания веб-приложений на Java
➡️ Vaadin Flow — фреймворк для веб-приложений на чистой Java Vaadin Flow — это фреймворк для создания веб-приложений на Java без написания JavaScript и HTML. Он позволяет создавать интерфейсы и логику приложения полностью на Java. • Полная разработка на Java. • Компоненты для UI и двусторонняя привязка данных. • Интеграция с Spring Boot. 🔗 Ссылочка на доку (https://vaadin.com/docs/latest/) 👩‍💻 @javaquiz

➡️ Quarkus — быстрый и лёгкий фреймворк для Java-приложений Quarkus — оптимизированный фреймворк для создания Java-приложений
➡️ Quarkus — быстрый и лёгкий фреймворк для Java-приложений Quarkus — оптимизированный фреймворк для создания Java-приложений с низким временем запуска и минимальным потреблением памяти. Подходит для облачных и серверлесс-приложений. • Быстрый старт с нативной компиляцией на GraalVM. • Оптимизация для облака и контейнеров. • Совместимость с Java API и фреймворками Spring, Hibernate. • Горячая перезагрузка для ускорения разработки. 🔗 Ссылочка на доку (https://quarkus.io/guides/) 👩‍💻 @javaquiz

⌨️ 🤖 Хочешь прокачаться в backend-разработке? Но справишься ли ты с тестом по Kotlin? 🏆 Пройди тест из 10 вопросов, проверь
⌨️ 🤖 Хочешь прокачаться в backend-разработке? Но справишься ли ты с тестом по Kotlin? 🏆 Пройди тест из 10 вопросов, проверь свой уровень знаний и приходи учиться на онлайн-курс «Kotlin Backend Developer. Professional» от OTUS! На курсе: ✔️ Разработаете monolith, микросервисы и serverless с помощью Kotlin и фреймворков Spring, Ktor и бессерверных библиотек. ✔️ Освоите корутины для асинхронных и многопоточных задач, а также WebSocket, RabbitMQ, Kafka для транспорта. ✔️ Научитесь строить хранилища на Postgres, Cassandra, ArcadeDb и интегрировать OpenAPI с любым фронтендом. 🎫 Курс можно приобрести в рассрочку ➡️ Пройди тест и присоединяйся к группе: https://clck.ru/3NJ6uK Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

⚙️ Collectors.joining() В Java метод Collectors.joining() из пакета java.util.stream позволяет объединить элементы потока в о
⚙️ Collectors.joining() В Java метод Collectors.joining() из пакета java.util.stream позволяет объединить элементы потока в одну строку с опциональным разделителем, префиксом и суффиксом. Это удобно для создания строковых представлений коллекций. 👩‍💻 @javaquiz

#Вопросы_с_собеседования В чем разница между Thread.sleep() и Thread.yield()? Thread.sleep(): Этот метод приостанавливает выполнение текущего потока на заданное количество времени. Время задается в миллисекундах и указывается в качестве аргумента метода. При вызове Thread.sleep(), поток переходит в состояние ожидания и не выполняет код в течение указанного периода времени. После истечения времени поток снова становится готовым к выполнению. Вызов Thread.sleep() может сгенерировать исключение InterruptedException, поэтому необходимо обрабатывать его или пробрасывать. Thread.yield(): Этот метод предоставляет намек планировщику потоков на то, что поток, вызвавший yield(), готов уступить процессорное время другим потокам с тем же приоритетом. Однако это рекомендация, а не гарантия. Вызов Thread.yield() приводит к тому, что текущий поток переходит из исполняемого в состояние готовности, чтобы другие потоки могли получить доступ к процессору. Однако, если нет других готовых потоков с тем же приоритетом, поток может продолжить выполнение. 👩‍💻 @javaquiz

⚙️ Optional.ofNullable() В Java метод Optional.ofNullable() создаёт объект Optional, который может содержать значение или быт
⚙️ Optional.ofNullable() В Java метод Optional.ofNullable() создаёт объект Optional, который может содержать значение или быть пустым. Полезен для избежания NullPointerException и обработки необязательных значений. 👩‍💻 @javaquiz

👩‍💻 Ваши Java-приложения под нагрузкой едва дышат? Профилирование и оптимизация кода остаются за скобками? Курс «Java Devel
👩‍💻 Ваши Java-приложения под нагрузкой едва дышат? Профилирование и оптимизация кода остаются за скобками? Курс «Java Developer. Advanced» от OTUS — это глубокое погружение в устройство JVM, байткод, сборщики мусора, профилирование и оптимизацию в облаке. Наши эксперты-практики покажут, как выбрать GC, снять дамп памяти и обнаружить утечки, как профилировать “горячие” места, настраивать интеграцию с Prometheus & Grafana и деплоить сервисы в Kubernetes. 🦾 Вы научитесь обосновывать выбор JVM-имплементации, анализировать heap-дампы, синхронизировать потоки, использовать Reactor и неблокирующие I/O, проектировать метрики и трассировку. 🎁 Дарим промокод, который дает скидку на обучение - JVADV7 ➡️ Пройдите короткий тест и присоединяйтесь к группе: https://clck.ru/3NHH2Y Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

➡️ Feign: Секрет быстрого и чистого вызова REST API в Java Feign – библиотека для Java, автоматизирующая вызов REST API. Она
➡️ Feign: Секрет быстрого и чистого вызова REST API в Java Feign – библиотека для Java, автоматизирующая вызов REST API. Она сокращает код, создавая запросы и обрабатывая исключения без лишних конструкций. Идеально подходит для работы с несколькими API и упрощает тестирование. • Автоматическая генерация кода для вызова API, избавляя от рутины. • Лёгкость тестирования и расширяемость при добавлении новых API. 🔗 Ссылочка на доку (https://github.com/OpenFeign/feign#why-feign-and-not-x) 👩‍💻 @javaquiz

⚙️ Collections.reverse() В Java метод Collections.reverse() изменяет порядок элементов в списке на обратный. Это удобно для р
⚙️ Collections.reverse() В Java метод Collections.reverse() изменяет порядок элементов в списке на обратный. Это удобно для работы с коллекциями, где требуется обратный порядок. 👩‍💻 @javaquiz

⁉️👩‍💻Разрабатываете на Java, но проект на Spring превращается в черный ящик? Бины ведут себя непредсказуемо, конфигурация р
⁉️👩‍💻Разрабатываете на Java, но проект на Spring превращается в черный ящик? Бины ведут себя непредсказуемо, конфигурация разрастается, а ошибка в одном модуле рушит всю систему. Интервью на позицию Middle неудачно — не хватает уверенности в Spring. 🤝 Тем временем рынок требует специалистов, которые не просто знают Spring, а умеют строить продакшен-приложения с его помощью. Компании ищут разработчиков, которые понимают, как работают Spring Boot, Spring Security, Spring MVC и могут строить микросервисную архитектуру. ⚡️ На курсе «Разработчик на Spring Framework» мы закроем пробелы и дадим актуальные навыки. Практика на реальных кейсах, ревью заданий, тестовое собеседование — вы освоите Spring так, чтобы уверенно применять его в работе. ➡️ Пройдите вступительное тестирование и получите скидку на обучение: https://clck.ru/3NEiKj 🎁 Дарим промокод, который дает скидку на обучение - SRING7 Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

❓ Вопрос на собеседовании Что такое функциональный интерфейс в Java, и как он используется в лямбда-выражениях? Ответ ⬇️ Функциональный интерфейс в Java — это интерфейс с единственным абстрактным методом, который может использоваться как целевая конструкция для лямбда-выражений и ссылок на методы. Они помогают писать более чистый и выразительный код, позволяя передавать поведение (функции) как параметры. Аннотация @FunctionalInterface (https://t.me/FunctionalInterface) проверяет, что интерфейс соответствует требованиям функционального интерфейса и помогает избежать случайного добавления методов. Пример использования ⚙️ @FunctionalInterface interface MyFunctionalInterface { void printMessage(String message); } public class Main { public static void main(String[] args) { MyFunctionalInterface printer = message -> System.out.println("Сообщение: " + message); printer.printMessage("Привет, мир!"); // Сообщение: Привет, мир! } } 👩‍💻 @javaquiz

🤖 Ваш подход к разработке устарел? Тратите время на функции, которые давно готовы в сторонних сервисах? Приглашаем на открыт
🤖 Ваш подход к разработке устарел? Тратите время на функции, которые давно готовы в сторонних сервисах? Приглашаем на открытый урок «Стиль разработки 2020-х и среда окружения современного бэкенд-приложения». 🗓 30 июля в 19:00 МСК 🆓 Бесплатно. Урок в рамках старта курса «Kotlin Backend Developer. Professional». На открытом уроке вы узнаете, как поменялся стиль разработки в 2020-х и какие компоненты уже не нужно писать самому. Поговорим о том, как в современном бэкенде выполнять только ключевую бизнес-логику. 🔥Вы получите готовые инфраструктурные файлы, которые упростят создание приложений на Kotlin и любых других языках. 🔗 Ссылка на регистрацию: https://clck.ru/3NDXH9 Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

👩‍💻 31 июля стартует курс «Java-разработчик» от OTUS — это то, что нужно, если вы хотите успешно вкатиться в разработку в 2
👩‍💻 31 июля стартует курс «Java-разработчик» от OTUS — это то, что нужно, если вы хотите успешно вкатиться в разработку в 2025 🦾 Вас ждет огромное количество практики и реальные кейсы: настройка окружения, базовые алгоритмы, синтаксис Java, Spring и Docker. Мы покажем, почему диплом OTUS ценят HR в крупных компаниях. Если вы сисадмин, тестировщик, аналитик или просто хотите освоить программирование с нуля — этот курс для вас. Мы научим создавать серверные веб-приложения, работать с PostgreSQL, Kafka и Kubernetes, формировать портфолио и готовить резюме под Middle-Java-Dev. 🎁 Дарим промокод, который дает скидку на обучение - JAVA7 👉 Оставьте заявку и и присоединяйтесь к группе: https://clck.ru/3NDXJQ Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

➡️ Использование Chronicle Map для распределенных ключ-значение хранилищ Chronicle Map — это мощный инструмент для создания р
➡️ Использование Chronicle Map для распределенных ключ-значение хранилищ Chronicle Map — это мощный инструмент для создания распределенных хранилищ "ключ-значение" с высокой производительностью. Поддерживает работу с большими объемами данных в реальном времени и отлично подходит для высоконагруженных систем. • Поддерживает распределенные хранилища. • Минимальная задержка, высокая производительность. • Идеальна для финансовых и IoT-приложений. 🔗 Ссылочка на доку (https://github.com/OpenHFT/Chronicle-Map) 👩‍💻 @javaquiz

⚙️ Files.move() В Java метод Files.move() из пакета java.nio.file используется для переименования или перемещения файла/дирек
⚙️ Files.move() В Java метод Files.move() из пакета java.nio.file используется для переименования или перемещения файла/директории. Он является мощным инструментом для работы с файловой системой. 👩‍💻 @javaquiz

uniVocity-parsers uniVocity-parsers — это набор высокопроизводительных и надежных парсеров для Java. Он предлагает унифициров
uniVocity-parsers uniVocity-parsers — это набор высокопроизводительных и надежных парсеров для Java. Он предлагает унифицированный интерфейс для работы с различными форматами файлов, а также надежную инфраструктуру для разработки новых парсеров. 👩‍💻 @javaquiz

👩‍💻 Хотите создавать плавные и быстрые анимации для мобильных приложений, не замедляя их работу? Приглашаем на открытый уро
👩‍💻 Хотите создавать плавные и быстрые анимации для мобильных приложений, не замедляя их работу? Приглашаем на открытый урок «Jetpack Compose: пишем красивые и производительные анимации». 🗓 21 июля в 20:00 МСК 🆓 Бесплатно. Урок в рамках старта курса «Android Developer. Professional». На открытом уроке мы расскажем, как с помощью Jetpack Compose создавать красивые и производительные анимации, которые работают без задержек и не перегружают приложение. 🎯 Мы подробно разберем ключевые инструменты анимации и расскажем, как избежать лишних рекомпозиций и профилировать анимации для повышения производительности. 🔗 Ссылка на регистрацию: https://clck.ru/3N8UsG Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

❓ Что такое Lambda-выражения? Лямбда-выражения — это способ написать анонимные функции (или функциональные объекты) в Java. О
❓ Что такое Lambda-выражения? Лямбда-выражения — это способ написать анонимные функции (или функциональные объекты) в Java. Они были введены в Java 8 и позволяют передавать поведение как аргументы в методы. 🗣 Лямбда-выражения значительно упрощают работу с такими функциональными интерфейсами, как Runnable, Callable, Comparator и многими другими. ✔️ Преимущества Lambda-выражений • Краткость: Лямбда-выражения позволяют писать меньше кода. • Читаемость: Код становится более читабельным и понятным. • Поддержка функциональных интерфейсов: Лямбда-выражения работают с функциональными интерфейсами, делая работу с ними проще и интуитивно понятной. • Повышенная производительность: В некоторых случаях лямбда-выражения могут улучшить производительность за счёт оптимизаций, выполненных компилятором. 👩‍💻 @javaquiz

👩‍💻 Ваши Java-приложения под нагрузкой едва дышат? Профилирование и оптимизация кода остаются за скобками? Курс «Java Devel
👩‍💻 Ваши Java-приложения под нагрузкой едва дышат? Профилирование и оптимизация кода остаются за скобками? Курс «Java Developer. Advanced» от OTUS — это глубокое погружение в устройство JVM, байткод, сборщики мусора, профилирование и оптимизацию в облаке. Наши эксперты-практики покажут, как выбрать GC, снять дамп памяти и обнаружить утечки, как профилировать “горячие” места, настраивать интеграцию с Prometheus & Grafana и деплоить сервисы в Kubernetes. 🦾 Вы научитесь обосновывать выбор JVM-имплементации, анализировать heap-дампы, синхронизировать потоки, использовать Reactor и неблокирующие I/O, проектировать метрики и трассировку. 🎁 Дарим промокод, который дает скидку на обучение - JVADV7 ➡️ Пройдите короткий тест и присоединяйтесь к группе: https://clck.ru/3NABnx Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576