Java Interview Tasks
4.9K subscribers
213 photos
1 video
1 file
141 links
Реальные вопросы и задачи с собеседований.
Оригинальный авторский контент.
Актуальный материал.
Уровень вопросов от junior до supersenior.

Автор канала - @alexzelentsov

По рекламе: @alexzelentsov
Download Telegram
🔍 Ответ на задачу про Records: Компактный конструктор 📝
В рекордах (Java 16+) есть "компактный конструктор". У него нет круглых скобок с параметрами. Он автоматически получает те же параметры, что объявлены в заголовке рекорда. Это идеальное место для валидации или нормализации данных (например, name = name.trim()).

Вывод:
Код скомпилируется и выбросит исключение. Это правильный способ гарантировать валидность данных в Immutable записях.

⚡️ Не перепутайте:
В компактном конструкторе не нужно писать this.name = name, Java сделает это сама в конце.

#java #records #java17 #clean_code #basics #интервью #java_interview_tasks
👍8❤1🔥1
🔍 Ответ на задачу про Sealed Classes: Закрытая иерархия 🔒
Ключевое слово sealed (Java 17) разрешает наследование только тем классам, которые перечислены в списке permits. Любой другой класс (как Triangle) получит ошибку компиляции при попытке расширить Shape.
Наследники sealed класса обязаны быть либо final, либо sealed, либо non-sealed (открывающим иерархию обратно).

Вывод:
Triangle нет в списке разрешенных. Поэтому вариант с Triangle не скомпилируется.

⚡️ Не перепутайте:
Sealed-классы отлично работают вместе с Pattern Matching в switch, позволяя компилятору проверять, все ли возможные подтипы вы обработали.

#java #java17 #sealedclasses #oop #basics #интервью #java_interview_tasks
✍5