Я читаю о Государственном паттерне. Я только начал, поэтому, конечно, я начинаю с прочтения всей статьи Википедии .
Я заметил, что оба примера в статье имеют некоторый базовый абстрактный класс или интерфейс Java для общих методов / функций State. Тогда есть некоторые состояния, которые наследуются от базы и реализуют эти методы / функции по-разному. Тогда есть класс Context, который имеет закрытый член типа State и который в любой момент может быть равен экземпляру одной из реализаций. Этот контекстный класс также реализует те же методы и передает их в текущий экземпляр состояния, а затем имеет дополнительный метод для изменения состояния (или, как я понимаю, в зависимости от конструкции изменение состояния может быть реакцией на один из реализованных методов) .
Почему этот контекстный класс специально не «расширяет» или «не реализует» базовый базовый класс / интерфейс State?