面向对象编程的几个原则

1.单一职责原则:

a. 就一个类而言,应该仅有一个引起它变化的原因。

b. 如果能够想到多余一个的动机去改变一个类,那么这个类就具有多余一个的职责,就应该考虑类的职责的分离。

2.开放—封闭原则:

a. 开放拓展,封闭更改

b.多拓展,少修改

c. 总会有无法预测的需求(不可能完全的封闭),所以,必须先猜测出最有可能发生变化的种类,然后构造抽象来隔离那些变化。

d. 当发变化时要尽快创建抽象隔离变化,以免发生同类变化。

e. 开放—封闭之后要做到——>面对需求(变化),对程序的改动是增加新的代码进行的,而不是修改原来的代码。(需要做到代码的拓展性比较好)

f. 应仅对程序中出现频繁变化的那些部分做出抽象,而不能可以抽象。

3.依赖倒转原则

a. 高层模块不应该依赖低层模块,两者都应该依赖抽象(抽象类或接口)。

b. 针对接口编程,不要对实现编程。

c.强内聚,松耦合 ---比如访问数据库时,我们吧访问数据库的代码写成函数,没次做新项目复用时只要调这些函数即可。

4. 里氏转换: 

a. 定义:子类必须能够替换它们的父类,而程序没有变化。-->这样父类才能真正被复用,子类也能够在父类基础上拓展。(因为子类拥有父类所有非private的行为和属性)

面向对象的标志:程序中所有依赖关系都是终止于抽象类或者接口。   






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Sam_ONE

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值