Junior — Middle
Vysvětlete, co znamená omezit rozhraní pomocí klíčového slova 'sealed' v Javě nebo podobných jazycích.
sobes.tech AI
Odpověď od 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.