Junior — Middle
Wyjaśnij, co oznacza ograniczenie interfejsu za pomocą słowa kluczowego 'sealed' w Java lub podobnych językach.
sobes.tech AI
Odpowiedź 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.