Sobes.tech
Back to questions
Junior — Middle
57

Какое значение имеет модификатор final для объявленных классов и интерфейсов в Java?

Companies where asked
Драйв Клик

Answer from AI

sobes.tech AI

В Java модификатор final для класса означает, что этот класс нельзя наследовать — то есть нельзя создать подкласс от класса, объявленного как final. Это используется для предотвращения расширения класса, что может быть важно для обеспечения безопасности, неизменности поведения или оптимизации.

Для интерфейсов модификатор final не применяется, так как интерфейсы предназначены для реализации, и их нельзя объявлять как final. Попытка объявить интерфейс с final приведёт к ошибке компиляции.

Пример:

final class ImmutableClass {
    // нельзя создать класс, который наследует ImmutableClass
}

// Попытка сделать так вызовет ошибку:
// class SubClass extends ImmutableClass {}  // Ошибка компиляции