在一个图形处理系统中,已有一个 Circle 类并通过统一接口 Shape 提供绘图功能。现在需要增加一个 Triangle 类,也希望通过 Shape 接口支持绘图功能。若在不修改原有接口和 Circle 类代码的前提下实现此功能,这种做法遵循了哪一种面向对象设计原则(开闭原则)。
开闭原则是面向对象设计的核心原则之一,核心要求是软件实体包括类、模块、函数等要对扩展开放、对修改关闭,也就是新增功能时优先通过扩展已有代码来实现,而非直接修改原有代码,这能最大程度降低改动带来的风险,保障原有功能的稳定性,提升系统的可维护性和扩展性。实际开发中,像图形系统新增图形类、电商系统新增支付方式等场景,都可依托统一接口扩展新实现类来完成功能拓展。此外,开闭原则常和其他面向对象设计原则配合使用,比如单一职责原则确保每个类只负责单一功能,减少后续因功能变动导致的修改;依赖倒置原则要求依赖抽象而非具体实现,为扩展提供灵活基础;里氏替换原则保障子类可安全替换父类,维持系统行为一致性,这些原则相互配合,能共同构建出灵活、健壮且易于维护的面向对象系统。
本题考察的是在一个图形处理系统中,已有一个 Circle 类并通过统一接口 `S相关知识。
此外,开闭原则常和其他面向对象设计原则配合使用,比如单一职责原则确保每个类只负责单一功能,减少后续因功能变动导致的修改。依赖倒置原则要求依赖抽象而非具体实现,为扩展提供灵活基础。里氏替换原则保障子类可安全替换父类,维持系统行为一致性,这些原则相互配合,能共同构建出灵活、健壮且易于维护的面向对象系统。
本小问答案是 开闭原则。此外,开闭原则常和其他面向对象设计原则配合使用,比如单一职责原则确保每个类只负责单一功能,减少后续因功能变动导致的修改。
因此,选项 B 正确。
