почему мы не можем назначить более слабую привилегию в подклассе

У меня есть класс, у которого есть метод, чей спецификатор доступа по умолчанию является публичным. Теперь я хотел бы расширить этот класс в подклассе, и я хочу переопределить этот метод, чтобы иметь спецификатор доступа "private". При компиляции этого кода я получаю ошибку компиляции:

msgstr "попытка назначить более слабые права доступа".

Может кто-нибудь объяснить мне, что не так с назначением более слабых привилегий в подклассе?

Вот код, вызвавший ошибку компиляции:

class Superclass 
{
    void foo() 
    {
        System.out.println("Superclass.foo");
    }
}

class Subclass extends Superclass 
{
    private void foo() 
    {
        System.out.println("Subclass.foo");
    }
}

Ответы на вопрос(7)

Ваш ответ на вопрос