七大面向对象设计原则及其举例

本文探讨面向对象设计的三大核心原则:开闭原则强调模块应对扩展开放,对修改关闭;单一职责原则主张一个类应只有一个引起变化的原因;里氏替换原则确保子类能替换掉其基类。通过实例解释这些原则,提升代码的可扩展性和维护性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

面向对象设计中常见的设计原则

开闭原则
单一职责原则
里氏替换原则
依赖倒置原则
接口隔离原则
最少知识原则(迪米特法则)
少用继承多用组合(合成复用原则)

一.开闭原则

定义:一个软件实体应当对外扩展开放,对内关闭修改,即在设计一个模块的时候,应当使这个模块可以在不被修改的前提下可扩展。
作用:(1)只对扩展代码进行测试,源代码依然可以运行。
(2)使代码具有优质的可扩展性和维护性。
实现方法:可以通过**“抽象约束、封装变化”**来实现开闭原则,即通过接口或者抽象类为软件实体定义一个相对稳定的抽象层,而将相同的可变因素封装在相同的具体实现类中。

举例

客户需要一个减法软件:客户——>减法。
然后客户现在需要加法软件——>加法(在减法的基础上将改为加法)。
上述这种做法是错误的,违背了开闭原则,对源代码进行了修改!在这里插入图片描述我们应该抽象出一个运算类或者声明一个运算法则,里面包括加法或者减法,当然也可以包括其它的!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值