TGViewer
Channel Public Channel
Библиотека собеса по Java | вопросы с собеседований

Библиотека собеса по Java | вопросы с собеседований

@java_interview_lib

Вопросы с собеседований по Java и ответы на них.

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

Учиться у нас: clc.to/3wECtA

Для обратной связи: @proglibrary_feeedback_bot
Subscribers
6.43K
Photos
438
Videos
12
Links
733

Showing posts older than #934 · Back to latest

Older Posts 20 shown
Post #933 1.98K
❓ Что такое технический долг?

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

Технический долг — не всегда плохо, он бывает осознанным инструментом для достижения быстрых результатов, но без контроля и своевременного «погашения» становится серьёзной проблемой для команды и бизнеса.

🐸 Библиотека собеса по Java
  • 👍 7
  • ❤ 1
  • 🔥 1
  • 👏 1
Post #931 2.07K
❓ Что такое AOP?

AOP (Aspect-Oriented Programming) — это парадигма программирования, которая позволяет отделить сквозную логику от основной бизнес-логики. Сквозная логика — это функционал, который повторяется во многих местах приложения, например, логирование, управление транзакциями, проверка безопасности, кэширование.

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

Spring AOP использует прокси-объекты, которые оборачивают целевой объект и внедряют дополнительное поведение вокруг вызовов методов. Аспекты объявляются с помощью аннотаций (@Aspect), а логика — в методах с advice (@Before, @After, @Around и т.д.).

🐸 Библиотека собеса по Java
  • 👍 8
  • 🔥 4
  • 👏 1
Post #930 1.94K
❓ Что такое абстракция?

Абстракция — это принцип ООП, который позволяет выделять в программе только значимые характеристики объекта, скрывая внутренние детали реализации. В Java абстракция достигается через абстрактные классы и интерфейсы.

Абстрактный класс может содержать как реализованные, так и абстрактные (без реализации) методы, задавая общий шаблон для подклассов. Интерфейс определяет набор методов, которые класс обязан реализовать.

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

🐸 Библиотека собеса по Java
  • 👍 8
  • 🔥 2
  • 👏 1
Post #929 1.92K
🚨 Что на самом деле происходит с увольнениями в ИТ

Каждый день в чатах разработчиков появляются сообщения «ищу работу», «команду сократили», «проект закрыли». Но никто не говорит о причинах и масштабах катастрофы. Мы запустили большое исследование, чтобы раскрыть правду!

🎯 Что мы выясним:
→ Реальные причины увольнений
→ Сколько времени нужно на поиск работы
→ Самые безумные истории смены работы

Понимая реальную ситуацию, мы сможем принимать взвешенные решения о карьере и не попасться на удочку HR-сказок.

👉 Пройдите опрос за 3 минуты и помогите всему сообществу: https://clc.to/yJ5krg
  • ❤ 1
Post #928 1.69K
❓ Что такое полиморфизм?

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

Достигается через переопределение методов (runtime polymorphism) и перегрузку методов (compile-time polymorphism).

Основной тип полиморфизма — динамический (runtime), когда метод вызывается в зависимости от реального типа объекта во время выполнения, а не от типа ссылки.

🐸 Библиотека собеса по Java
  • 👍 13
  • 🔥 2
  • 👏 2
  • ❤ 1
Post #926 1.89K
⏰ Последние 2 дня скидки на курс «AI-агенты для DS-специалистов»

Пока большинство дата-сайентистов строят модели и делают аналитику, рынок уже требует специалистов, которые создают автономные системы на базе ИИ-агентов.

Для этого мы подготовили специальный курс и собрали кучу дополнительного контента, который поможет погрузиться в тему еще глубже. Но чтобы получить все плюшки, успевайте до 1 июня.

🎁 Что вы получите при оплате курса до 1 июня:
— Промокод PROGLIBAIна 10 000 ₽ на курс, чтобы изучать AI-агентов еще выгоднее
— Эксклюзивный лонгрид по API и ML от Proglib

💡Что разберем на курсе «AI-агенты для DS-специалистов»:
— Реализацию памяти в цепочках langchain
— Полный пайплайн RAG-системы с оценкой качества
— Основы мультиагентных систем (MAS)
— Протокол MCP и фреймворк FastMCP

Промокод также действует на курсы «Математика для Data Science» и «Алгоритмы и структуры данных».

👉 Успейте до 1 июня: https://clc.to/Cttu7A
Post #924 1.75K
❓ Что такое наследование в Java?

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

Наследование реализуется с помощью ключевого слова extends. Подкласс может расширять или переопределять поведение суперкласса, а также добавлять новые поля и методы. Важно помнить, что в Java класс может наследоваться только от одного суперкласса.

🐸 Библиотека собеса по Java
  • 👍 7
  • 🔥 3
  • 👏 1
Post #922 1.92K
❓ Что такое инкапсуляция?

Инкапсуляция — это механизм объединения данных (переменных) и методов, работающих с этими данными, в одном классе, с ограничением прямого доступа к внутренним компонентам объекта. В Java инкапсуляция достигается с помощью модификаторов доступа (private, protected, public), а также через предоставление публичных методов для чтения и изменения значений полей.

🐸 Библиотека собеса по Java
  • 👍 10
  • 🔥 1
  • 👏 1
  • 🌚 1
Post #921
Библиотека собеса по Java | вопросы с собеседований pinned «👾 AI-агенты — настоящее, о котором все говорят На днях мы анонсировали наш новый курс AI-агенты для DS-специалистов 🎉 Это продвинутая программа для тех, кто хочет получить прикладной опыт с LLM и решать сложные задачи! На обучении вы соберете полноценные…»
Post #920 2.29K
👾 AI-агенты — настоящее, о котором все говорят

На днях мы анонсировали наш новый курс AI-агенты для DS-специалистов 🎉

Это продвинутая программа для тех, кто хочет получить прикладной опыт с LLM и решать сложные задачи!

На обучении вы соберете полноценные LLM-системы с учётом особенностей доменных областей, получите hands-on навыки RAG, Crew-AI / Autogen / LangGraph и агентов.

🎓 В рамках курса вы научитесь:
— адаптировать LLM под разные предметные области и данные
— собирать свою RAG-систему: от ретривера и реранкера до генератора и оценки качества
— строить AI-агентов с нуля — на основе сценариев, функций и взаимодействия с внешней средой

Разберете реальные кейсы и научитесь применять похожие подходы в разных доменных областях, получите фундамент для уверенного прохождения NLP system design интервью и перехода на следующий грейд.

Старт 5 июля, а при оплате до 1 июня действует дополнительная скидка и бонус — эксклюзивный лонгрид по API и ML от Proglib.

Начните осваивать тему уже сейчас 👉 https://clc.to/Cttu7A
  • ❤ 2
Post #919 1.88K
❓ Что такое Spring Bean Scope?

Spring Bean Scope определяет жизненный цикл и видимость бина в контейнере.

Основные виды:

▪️ singleton (по умолчанию) — один экземпляр на весь контейнер.
▪️ prototype — новый экземпляр при каждом запросе.
▪️ request — бин живёт в рамках HTTP-запроса.
▪️ session — бин живёт в рамках HTTP-сессии.
▪️ application — бин живёт в рамках веб-приложения.
▪️ websocket — бин на время WebSocket-сессии.

🐸 Библиотека собеса по Java
  • 👍 12
  • ❤ 2
  • 🔥 2
  • 👏 1
Post #917 2.16K
😱 Вся правда об увольнениях в IT в 2025-м

Пока все молчат о том, что происходит на рынке, мы решили выяснить реальную картину. Без прикрас и корпоративного пиара.

Но для этого нам нужна ваша помощь! Мы собираем данные от разработчиков, тестировщиков, менеджеров и всех, кто работает в ИТ, чтобы создать честное исследование о:

— реальных причинах массовых увольнений
— судьбе тех, кто остался за бортом IT-рынка
— том, сколько времени сейчас нужно на поиск работы

Почему это важно? Потому что сила в правде. Зная реальную ситуацию, вы сможете лучше понимать тренды рынка и планировать карьеру.

⚡️Пройдите опрос и помогите всему сообществу: https://clc.to/yJ5krg
  • 😁 2
Post #916 2.02K
❓ В чем отличие между StackOverflowError и OutOfMemoryError?

StackOverflowError возникает, когда стек вызовов переполняется, обычно из-за глубокой или бесконечной рекурсии. Каждый вызов метода занимает место в стеке, и при превышении лимита памяти стека JVM выбрасывает StackOverflowError.

OutOfMemoryError — ошибка нехватки памяти в куче (heap). Она появляется, когда JVM не может выделить дополнительную память для объектов, потому что вся доступная heap-память исчерпана.

🐸 Библиотека собеса по Java
  • 👍 11
  • 👏 2
  • 🔥 1
Post #915 2.03K
❓ Для чего нужен enum в Java?

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

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

Преимущества:

— Типобезопасность (нельзя присвоить значение вне набора)
— Удобство в switch-выражениях
— Возможность добавлять поведение (методы)

🐸 Библиотека собеса по Java
  • 👍 14
  • ❤ 2
  • 🔥 2
Post #913 1.95K
💬 Обратная связь

Вы следите за этим каналом потому что:

🔥 — Готовлюсь к скорому собеседованию
👍🏼 — Просто поддерживаю себя в тонусе
❤️ — Использую для учёбы в целом
😁 — Другая цель (напишу в комментариях)

🐸 Библиотека собеса по Java
  • 👍 69
  • 🔥 28
  • ❤ 24
  • 😁 3
Post #912 2.14K
❓ Как устроены аннотации?

Аннотации в Java — это механизм добавления метаданных к элементам программы. С помощью @Retention указывается, на каком этапе аннотация доступна: только в исходном коде (SOURCE), в байткоде (CLASS), или в рантайме (RUNTIME). @Target определяет, к чему можно применять аннотацию: к полям, методам, параметрам, конструкторам и т. д. Эти параметры управляют поведением аннотации и тем, как фреймворки её интерпретируют, особенно во время рефлексии.

🐸 Библиотека собеса по Java
  • 👍 16
  • 🔥 3
  • 👏 3
Post #911 2.12K
❓ Объясните различия между ConcurrentHashMap и HashMap?

HashMap не является потокобезопасной структурой, и её использование в многопоточной среде может привести к непредсказуемым результатам.

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

С версии Java 8 применяется CAS-логика и синхронизация на уровне bin-ов для модификаций, а чтения выполняются без блокировок.

🐸 Библиотека собеса по Java
  • 👍 9
  • ❤ 2
  • 🔥 1
Post #910 2.19K
❓ Объясните основные отличия между CompletableFuture и Future?

▪️ Future предоставляет базовую возможность получить результат асинхронной операции, но не позволяет легко комбинировать или цеплять действия.
▪️ CompletableFuture — расширение с поддержкой композиции, цепочек, обработки исключений, таймаутов и триггеров. Позволяет писать декларативный, неблокирующий код с методами thenApply(), thenCompose(), exceptionally().

🐸 Библиотека собеса по Java
  • 👍 10
  • 🔥 1
  • 👏 1
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →