Библиотека собеса по Java | вопросы с собеседований
6.3K subscribers
392 photos
8 videos
421 links
Вопросы с собеседований по Java и ответы на них.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/08c603b6

Для обратной связи: @proglibrary_feeedback_bot
Download Telegram
🔥 Новый курс «Математика для Data Science»

Записывайтесь до 19.10 и получите бонус-курс «Школьная математика» для быстрого освежения знаний! 🚀

🧠 Эксперты-спикеры на курсе:

▫️ Диана Миронидис — преподаватель ВШЭ, автор Яндекс Практикума;

▫️ Ксения Кондаурова — преподаватель Центрального Университета (Т-Банк);

▫️ Маргарита Бурова — академический руководитель программ Wildberries & Russ.

👉🏻 Не упустите шанс улучшить свои навыки
😁3👾1
В чем разница между == и .equals() в Java?

== сравнивает ссылки на объекты (т.е. проверяет, указывают ли две переменные на один и тот же объект в памяти).

.equals() — это метод, предназначенный для сравнения содержимого объектов. По умолчанию в классе Object он работает как ==, но многие классы (например, String, Integer, List) переопределяют его, чтобы сравнивать значения. Также можно самостоятельно переопределить его.

🐸 Библиотека собеса по Java

#core
Please open Telegram to view this post
VIEW IN TELEGRAM
👍125🔥1
В чём разница между Lambdas и Anonymous Classes?

И лямбды, и анонимные классы позволяют создавать "одноразовые" реализации, но лямбды — это более короткий и функциональный способ записать код, реализующий функциональный интерфейс (т.е. интерфейс с одним абстрактным методом).

Ключевые отличия:

🧩 Синтаксис: лямбда короче и читабельнее.

⚡️ Производительность: лямбды компилируются как invoke-dynamic и не создают новый класс → меньше накладных расходов.

🧠 this: внутри лямбды this указывает на внешний объект, а в анонимном классе — на экземпляр самого анонимного класса.

🎯 Назначение: анонимные классы подходят, если нужно переопределить несколько методов или иметь состояние. Лямбды — только для одного метода.

🐸 Библиотека собеса по Java

#core
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥2👏1
✔️ Java-тест: Concurrency edition

Проверим, как вы дружите с многопоточностью 👇

У вас есть метод doWork(), который выполняет тяжёлую операцию (например, чтение и обработку файла).

📦 Задание:

Нужно запустить ровно 5 потоков, каждый из которых вызывает doWork(), и дождаться завершения всех перед продолжением выполнение основного потока.

Разрешено использовать любые инструменты.

Ставьте → 🔥, если нравится формат. Если нет → 🤔

💬 Решения под спойлер. Сравним, какое будет лучше.

🐸 Библиотека собеса по Java

#practise
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9👍1👏1
🧠 Математика — движок всего, что мы пишем

Без неё не было бы сортировок, шифрования, графов и даже того самого if с вероятностью успеха в A/B-тесте.

Но главное, математика понятна, если объяснить её на языке разработки.

📘 Курс «Математика для Data Science»:

— от основ до реальных задач из собесов;
— линейная алгебра, статистика, теория вероятностей;
— визуализации, практика и живые уроки;
— поддержка менторов и комьюнити в чате.

🎓 За 2 месяца вы перестанете просто использовать библиотеки и начнёте понимать, как они работают.

🗓 Старт → 6 ноября

👉 Записаться на курс
😁3🌚1
Что такое Fork/Join Pool?

ForkJoinPool — это специальный пул потоков, оптимизированный для выполнения множества мелких параллельных задач, которые можно рекурсивно делить (fork) и объединять (join).

▪️ Как работает:

Задача делится на подзадачи (метод fork()), каждая выполняется в отдельном потоке.

Когда подзадачи завершаются, результаты объединяются (join()).

— В отличие от обычного ThreadPoolExecutor, каждый поток имеет собственную двустороннюю очередь задач и использует механизм work stealing: если поток простаивает, он "ворует" задачи из очередей других потоков.

▪️ Когда применять:


— Для задач, которые можно разбить на независимые части (например, обработка массивов, вычисления, рекурсивные алгоритмы).
— При необходимости максимально загрузить CPU (по числу ядер).

🐸 Библиотека собеса по Java

#concurrency
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥2👏1
Расскажите о паттерне Фасад?

Паттерн Фасад относится к структурным шаблонам проектирования. Его цель — скрыть сложность подсистемы за простым интерфейсом. Он предоставляет единую точку доступа к набору классов, упрощая взаимодействие клиента с системой.

Проще говоря, Фасад — это «фронт-дверь» сложной системы. Вместо того чтобы вызывать десятки методов из разных классов, клиент обращается к одному объекту, который внутри вызывает всё нужное.

Плюсы:

✔️ Упрощает использование сложной системы.
✔️ Изолирует клиента от изменений в подсистемах.
✔️ Повышает читаемость и поддержку кода.

Минусы:

⚠️ Может стать God объектом, если разрастается слишком сильно.

🐸 Библиотека собеса по Java

#patterns
Please open Telegram to view this post
VIEW IN TELEGRAM
👍81🔥1
Что такое "Thread Pool"?

Thread Pool (пул потоков) — это коллекция предварительно созданных потоков, которые могут быть использованы для выполнения задач.

Основная цель — минимизация накладных расходов на создание и уничтожение потоков. Вместо того чтобы создавать новый поток для каждой задачи, задачи передаются уже существующим потокам в пуле.

Это улучшает производительность и позволяет более эффективно управлять ресурсами, особенно при высокой нагрузке.

🐸 Библиотека собеса по Java

#concurrency
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥21
💻 В эпоху LLM код пишется легче, но…

Чтобы получать крутые офферы и построить устойчивую карьеру, нужно иметь развитое архитектурное мышление и инженерную культуру.

— Как перейти от поверхностного знания языка к экспертному уровню?
— Как развивать инженерную культуру: от базовых принципов к senior-практикам?
— Как использовать ИИ-инструменты для роста, а не деградации?
— Как разобраться в агентских системах и освоить современные подходы к архитектуре?

… Ответы на все эти вопросы узнаешь в бесплатном прямом эфире.

🗣 Спикер — Дмитрий Березницкий
Сhief Technical Officer с 20+ лет опыта в IT.

— Занимался разработкой решений в сферах безопасности, блокчейна, финтеха и электронной коммерции, сфокусированных на американском рынке.
— В роли архитектора и руководителя обеспечивал стратегическое направление команд и успешное внедрение международных проектов.
— Провел более 1 000 собеседований.


Встречаемся сегодня в 19:00 мск.

Ссылка на вебинар открывается сразу после регистрации 👉 https://kata.pw/g7wWOk
💬 Обратная связь

Ежемесячный опрос по грейдам. Растём вместе 💪🏻
Ваш грейд:

🔥 — Senior
👍🏼 — Middle
❤️ — Junior
😁 — Ещё учусь

🐸 Библиотека собеса по Java
Please open Telegram to view this post
VIEW IN TELEGRAM
👍20😁1611🔥9