Выбор ответа Middle Современная Java: record, sealed обновлено

Наследование record

Вопрос

Что можно сделать в record?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Реализовать интерфейс и добавить статическое поле. Record неявно final и уже наследует java.lang.Record, поэтому extends запрещён, а наследовать от record нельзя (abstract бессмысленен).

Варианты ответа

  1. Унаследовать другой класс через extends и добавить поле
  2. Реализовать интерфейс и добавить статическое полеправильный ответ
  3. Объявить дополнительное нестатическое поле
  4. Объявить record как abstract с наследниками

Разбор

Record неявно final и уже наследует java.lang.Record, поэтому extends запрещён, а наследовать от record нельзя (abstract бессмысленен). Состояние задают только компоненты, дополнительные поля экземпляра запрещены. Реализовывать интерфейсы, объявлять статические поля и методы, а также свои методы экземпляра можно.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме