Библиотека собеса по Java | вопросы с собеседований
6.33K subscribers
370 photos
4 videos
297 links
Вопросы с собеседований по Java и ответы на них.

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

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

Для обратной связи: @proglibrary_feeedback_bot
Download Telegram
Какие есть методы в классе Object?

Класс Object — базовый для всех классов в Java. Он определяет поведение, доступное каждому объекту. Основные методы:

▪️ equals(Object obj) — сравнение объектов на логическое равенство
▪️ hashCode() — возвращает хеш-код объекта
▪️ toString() — строковое представление объекта
▪️ getClass() — возвращает объект Class, представляющий тип в рантайме
▪️ clone() — создает копию объекта (если поддерживает Cloneable)
▪️ finalize() — вызывается перед сборкой мусора (устарел и не рекомендуется)
▪️ wait(), notify(), notifyAll() — методы для межпоточной синхронизации

🐸 Библиотека собеса по Java
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥3👏1
Что такое MVC?

MVC (Model-View-Controller) — это архитектурный шаблон, разделяющий приложение на три компонента:

▪️ Model (Модель) — содержит бизнес-логику
▪️ View (Представление) — отображает данные пользователю, получая их от модели
▪️ Controller (Контроллер) — обрабатывает входные данные (обычно от пользователя), вызывает нужные методы модели и обновляет представление

Этот подход упрощает сопровождение кода, позволяет разделить ответственность между слоями и облегчает тестирование.

🐸 Библиотека собеса по Java
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11👏2🔥1🤔1
Расскажите о паттерне "Стратегия"?

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

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

🐸 Библиотека собеса по Java
Please open Telegram to view this post
VIEW IN TELEGRAM
👍82🔥1
💬 Обратная связь

Ваше мнение по контенту:

🔥 — Всё супер
👍🏼 — Нормально
😁 — Есть предложения по улучшению (в комменты)

🐸 Библиотека собеса по Java
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥42👍13😁3
В чем разница между sleep() и wait()?

🔹 sleep() — это метод из Thread, он просто приостанавливает выполнение текущего потока на заданное время. Он не освобождает монитор (lock) объекта.

🔹 wait() — это метод из Object, он используется для синхронизации между потоками. Поток, вызвавший wait(), освобождает монитор и ждет, пока другой поток вызовет notify() или notifyAll().

🐸 Библиотека собеса по Java
Please open Telegram to view this post
VIEW IN TELEGRAM
👍71🔥1
Чем отличается абстрактный класс от интерфейса?

Абстрактный класс может содержать как реализованные, так и абстрактные методы, состояние (поля), а также конструкторы. Интерфейс до Java 8 содержал только абстрактные методы, но теперь может иметь default, static методы и даже private методы (с Java 9), но не может содержать состояние (кроме static final констант).

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

▪️ extends — только один абстрактный класс, но implements — множество интерфейсов.
▪️ Абстрактный класс позволяет инкапсулировать общую реализацию и состояние.
▪️ Интерфейс чаще используют для задания контракта, который может быть реализован классом с любой иерархией.

🐸 Библиотека собеса по Java
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥5👏2
Что такое нормализация базы данных?

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

Нормализация включает несколько этапов, называемых нормальными формами (1NF, 2NF, 3NF и т.д.), каждая из которых имеет свои требования к структуре таблиц.

🔹 1НФ
Таблица должна содержать только атомарные значения (без множественных значений в одной ячейке) и уникальные строки.

🔹 2НФ

Таблица должна быть в 1НФ, и все ненулевые атрибуты должны быть полностью зависимы от первичного ключа.

🔹 3НФ
Таблица должна быть в 2НФ, и все атрибуты должны быть не только зависимы от первичного ключа, но и напрямую, без транзитивных зависимостей (когда один атрибут зависит от другого через третий).

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