Я читаю книгу Язык программирования Java. В главе, в которой объясняется метод переопределения, он говорит:
Создание метода переопределения (в подклассе), менее доступного, чем в суперклассе, нарушало бы контракт суперкласса...
Текст в целом понятен. Мой единственный вопрос - что такое контракт суперкласса? Что означает контракт для класса Java?