Библиотека собеса по Java | вопросы с собеседований
Open in Telegram
Вопросы с собеседований по Java и ответы на них. По рекламе: @proglib_adv Учиться у нас: https://proglib.io/w/08c603b6 Для обратной связи: @proglibrary_feeedback_bot
Show more6 491
Subscribers
-224 hours
+97 days
+1830 days
Posts Archive
Какие типы ключевых слов используются в обработке исключений Java?
☕ try
☕catch
☕finally
☕throw
☕throws
EventListener
EventListener (слушатель событий) — это интерфейс, который позволяет объектам реагировать на события, происходящие в системе. Он используется для создания интерактивных приложений, где действия пользователя или изменения в системе должны вызывать определенные реакции.
Отличия String, StringBuilder, StringBuffer
⏺️ String — иммутабельный байтовый массив;
⏺️ StringBuilder — helper-класс для построения строк, не предоставляет гарантий синхронизации;
⏺️ StringBuffer — то же, что и StringBuilder, с synchronized методами.
Что такое трассировка стека (stacktrace) и как она связана с исключением?
Трассировка стека предоставляет имена классов и методов, которые были вызваны, от запуска приложения до момента возникновения исключения.
Это очень полезный инструмент отладки, поскольку он позволяет нам точно определить, где именно в приложении было сгенерировано исключение, и первоначальные причины, которые привели к нему.
🧑💻 Статьи для IT: как объяснять и распространять значимые идеи
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
LongAdder
LongAdder — это класс атомарных long-значений в Java, который предназначен для повышения производительности в многопоточных приложениях при частом изменении значения.
LongAdder работает следующим образом: он хранит несколько переменных, каждая из которых может быть обновлена одновременно без блокировки. Когда несколько потоков пытаются обновить одно и то же значение, они распределены по этим переменным. Это позволяет снизить конкуренцию между потоками и повысить производительность.
LongAdder можно использовать в следующих случаях:
— Для хранения счетчиков, которые часто обновляются несколькими потоками.
— Для реализации распределенных счетчиков, которые могут быть обновлены из любого места в сети.
— Для реализации распределенных хэш-таблиц, в которых значение хэша может быть обновлено несколькими потоками.
StampedLock
StampedLock — это механизм блокировки, представленный в Java 8. Он отличается от других механизмов блокировки, таких как synchronized и ReentrantLock, тем, что использует концепцию меток. Метка — это целое число, которое используется для отслеживания состояния блокировки.
StampedLock поддерживает три режима блокировки:
— Обычный режим (READ): в этом режиме несколько потоков могут одновременно читать данные, защищенные блокировкой.
— Редактирование (WRITE): в этом режиме только один поток может получить доступ к данным для редактирования.
— Оптимистическая блокировка (OPTIMISTIC): в этом режиме поток может получить доступ к данным для чтения, не блокируя другие потоки. Если данные были изменены другим потоком до того, как поток закончил чтение, поток получит ошибку.
Статический инициализатор
Статический инициализатор — блок кода, который выполняется при первой загрузке класса или при первом обращении к статическому члену класса (переменной или методу). Статический инициализатор обычно используется для инициализации статических переменных или выполнения других действий, которые требуются только один раз, при загрузке класса.
Статический инициализатор
Статический инициализатор — блок кода, который выполняется при первой загрузке класса или при первом обращении к статическому члену класса (переменной или методу). Статический инициализатор обычно используется для инициализации статических переменных или выполнения других действий, которые требуются только один раз, при загрузке класса.
Статический инициализатор
Статический инициализатор — блок кода, который выполняется при первой загрузке класса или при первом обращении к статическому члену класса (переменной или методу). Статический инициализатор обычно используется для инициализации статических переменных или выполнения других действий, которые требуются только один раз, при загрузке класса.
Маркер Remote
Маркер удаленности — это модификатор доступа, используемый для обозначения класса, интерфейса или метода как доступного только для удаленных объектов. Это означает, что объекты этого типа могут быть доступны только через удаленный вызов процедуры (RPC).
Класс MyRemoteClass теперь является удаленным классом, и его методы могут вызываться только удаленными объектами.
Чтобы вызвать метод удаленного класса, необходимо использовать класс RemoteStub. RemoteStub предоставляет набор методов для вызова методов удаленных классов.
Жизненный цикл сервлета
Жизненный цикл сервлета состоит из 5 этапов:
⏺️ Сервлет загружен;
⏺️ Сервлет создан;
⏺️ Сервлет инициализирован;
⏺️ Обслужить запрос;
⏺️ Сервлет уничтожен.
Java-разработчики, вас зовут в Тинькофф
Участвуйте в Java Weekend Offer, если ваш опыт больше 3 лет. Пройдите все этапы собеседования за выходные и, если все понравится, получите оффер.
Сможете решать сложные задачи, расти в сильной команде, работать на топовом стеке и пользоваться бенефитами.
Выбирайте удобную дату и пробуйте свои силы. Оставьте заявку до 14 февраля
АО «Тинькофф Банк», ИНН 7710140679
Какой метод HTTP не является неизменяемым?
Ответ: HTTP метод называется неизменяемым, если он на один и тот же запрос всегда возвращает одинаковый результат. HTTP методы GET, PUT, DELETE, HEAD и OPTIONS являются неизменяемыми, поэтому необходимо реализовывать приложение так, чтобы эти методы возвращали одинаковый результат постоянно.
Можно ли в конструкторе использовать return?
Ответ: можно, но без возвращаемого значения справа от return. То есть можно использовать return как вспомогательную конструкцию при вычислениях в конструкторе, чтобы срочно закончить (прервать) выполнение дальнейшего кода и завершить инициализацию объекта.
Как пройти собеседование в компанию мечты? ☄️
26 января проведем техническое собеседование на позицию Senior Java Developer в «Цифровые Привычки», 350.000₽+
В прямом эфире:
• Разберем реальное CV;
• Обсудим, на что обращают внимание рекрутеры, а на что — интервьюеры;
• Расскажем о частых ошибках на собеседовании и как не допустить их.
А после эфира поделимся чек-листом, который поможет учесть все требования 2024 года при подготовке к собеседованию.
Интервьюер – Роберт Мазипов. Java Architect с опытом программирования на Java 4 года. Преподаватель на курсе Senior Java Developer.
Больше — в прямом эфире!
Регистрация по ссылке: https://clck.ru/3889ce
Реклама. ООО "Платформа непрерывного обучения" ИНН 7839405924
erid: 2Vtzqvr6sMQ🔥 Освойте один из важнейших инструментов Java-разработчика
На бесплатном практическом уроке «Основы работы с Spring Data JDBC» от OTUS и Александра Фисунова — Senior Kotlin Developer в SSP Software на проекте ВТБ.
На вебинаре:
- разберемся, как работать с реляционными базами данных из Spring Boot приложения с использованием Spring Data JDBC;
- проведем небольшое сравнение с модулем Spring Data JPA;
- ответим на все возникающие вопросы.
📢📢 Встречаемся 30 января в 20:00 мск. Открытый урок проходит в преддверии обновленного запуска курса «Java Developer. Professional».
➡️ Пройдите короткий тест прямо сейчас, чтобы посетить бесплатный урок и получить запись: https://otus.ru/lessons/java-professional/?utm_source=telegram&utm_medium=cpm&utm_campaign=java&utm_term=java_interview_lib&utm_content=lesson-30-01-2024#event-3811
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576 Erid 2Vtzqvo8seWЧто будет, если в Map положить два значения с одинаковым ключом?
Если в Map положить два значения с одинаковым ключом, то произойдет следующее:
— При добавлении второго значения с уже существующим ключом, первое значение, связанное с этим ключом, будет перезаписано.
— Map может содержать только уникальные ключи. При попытке добавить дублирующийся ключ, старое связанное значение будет заменено новым.
— Конкретная реализация Map (например, HashMap) может бросить исключение, если попытаться добавить дублирующийся ключ.
Таким образом, поведение в такой ситуации зависит от конкретной реализации интерфейса Map, но в целом дублирующиеся ключи в Map запрещены.
Available now! Telegram Research 2025 — the year's key insights 
