Назад к вопросам
Junior — Middle
71
Объясните, что означает ограничение интерфейса с помощью ключевого слова 'sealed' в Java или подобных языках.
Компании, где спрашивали
Effective Technologies
Центр Инвест Банк
Ютека
Ответ от нейросети
sobes.tech AI
Ключевое слово sealed в Java (начиная с версии 15 в виде превью и официально с 17) используется для ограничения наследования интерфейса или класса. Оно позволяет явно указать, какие классы или интерфейсы могут наследовать или реализовывать данный интерфейс или класс.
Это помогает контролировать и ограничивать иерархию типов, повышая безопасность и предсказуемость кода.
Пример:
public sealed interface Shape permits Circle, Rectangle {
double area();
}
public final class Circle implements Shape {
// реализация
}
public final class Rectangle implements Shape {
// реализация
}
Здесь интерфейс Shape может быть реализован только классами Circle и Rectangle. Другие классы не смогут реализовать Shape.