1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/wizardforcel-thinking-in-java-zh

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
6.10 总结.md 3.4 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 11.03.2025 09:15 d56454c

6.10 Подведение итогов

Независимо от того, используете ли вы наследование или композицию, вы можете создать новый тип на основе существующего типа. Однако в типичной ситуации мы реализуем "повторное использование" или "переиспользование" существующих типов через композицию, используя их как часть процесса создания нового типа. Но если вы хотите реализовать повторное использование интерфейса, вам следует использовать наследование. Поскольку производные или производящиеся классы имеют интерфейсы базовых классов, они могут быть преобразованы "вверх" в базовый класс. Это аспект имеет первостепенное значение для полиморфизма, который будет рассмотрен в следующей главе.

Хотя наследование получает особое внимание в объектно-ориентированном программировании, при начале реального дизайна лучше сначала рассмотреть возможность использования композиции. Наследование следует рассматривать только тогда, когда это действительно необходимо (что также будет обсуждено в следующей главе). Композиция кажется более гибким подходом. Однако, применяя некоторые приемы наследования к своим членским типам, можно точно изменять типы этих членских объектов во время выполнения, что позволяет изменять их поведение.Хотя повторное использование кода через композицию и наследование может значительно помочь в быстрой разработке проектов, обычно требуется возможность переработки своей структуры классов перед тем, как позволить другим программистам полностью зависеть от него. Оптимальная структура классов должна состоять из каждого класса со своими специализированными задачами. Они не должны быть слишком большими (слишком много интегрированных функций затрудняет их повторное использование) или слишком маленькими (что делает невозможным их использование самостоятельно или добавление новых функций). В конечном итоге созданные классы должны легко повторно использоваться.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/wizardforcel-thinking-in-java-zh.git
git@api.gitlife.ru:oschina-mirror/wizardforcel-thinking-in-java-zh.git
oschina-mirror
wizardforcel-thinking-in-java-zh
wizardforcel-thinking-in-java-zh
master