"Создатель класса описывает функции класса и сообщает пользователю, как можно использовать класс. Набор общедоступных конструкторов, методов и полей, доступных извне класса, вместе с описание ожидаемого поведения этих членов служит контрактом класса."
Что такое групповой контракт?
Буквально... это "Набор общедоступных конструкторов, методов и полей, доступных извне класса, вместе с описанием ожидаемого поведения этих членов..."
Эти вещи представляют собой вещи, от которых пользователь класса должен иметь возможность зависеть; то есть то, что в классе не будет изменено ...
Это понятие "контракт" относится к Проектированию по контракту, первоначально описанному Бертраном Мейером в 1980-х годах.
Это аналог юридического контракта.
Теперь... очевидно... кто-то может изменить класс таким образом, что контракт будет нарушен. Они могут переименовывать или удалять методы, изменять типы аргументов или результатов, изменять способ работы методов в противоречии javadocs.
Но последствия нарушения контракта, скорее всего, будут плохими для кода, использующего API. Он может перестать работать. Он может не скомпилироваться. И обратите внимание, что это может быть не ваш код, который ломается.
Что именно вам в нем не понятно?
Что вам не понятно в утверждении?
Есть много пуха. Попробуйте «открытые конструкторы, методы и поля»… «служить контрактом класса». Описание (если оно есть) может быть полно лжи (или полуправды). Но вещи, которые вы можете вызывать, составляют контракт класса.
Спецификация API Java™ Platform, Standard Edition является примером договора между разработчиками Java и пользователями Java (разработчиками). Для данного класса вам предоставляется список общедоступных конструкторов и методов, которые вы можете использовать.