Sobes.tech
Назад к вопросам
Junior — Middle
65

Можно ли ограничить subclass от изменения реализаций методов базового класса?

Ответ от нейросети

sobes.tech AI

В Java можно ограничить возможность переопределения методов в подклассах с помощью ключевого слова final. Если метод объявлен как final в базовом классе, то подкласс не сможет изменить его реализацию.

Пример:

class Base {
    public final void doSomething() {
        System.out.println("Final method implementation");
    }
}

class Subclass extends Base {
    // Ошибка компиляции: нельзя переопределить final метод
    // public void doSomething() {
    //     System.out.println("Trying to override");
    // }
}

Таким образом, final защищает метод от переопределения в наследниках.