开放封闭原则与抽象类、接口的一些事

       迪米特法则: 如果两个类不必彼此直接通信,那么这两个类就不应当直接的相互作用,如果其中一个类需要调用另一个类的某一个方法的话,可以通过第三者转发这个调用。

       里氏代换原则:所有引用基类(父类)的地方必须能透明地使用其子类的对象。

       根据里氏代换原则为了提高系统的扩展性尽量使用基类去定义对象,在运行时用子类替换。同样迪米特法则也阐述的这个性质问题。

       这个性质就是开放封闭原则。当俩类完全没有多大关系,你只是需要用到某个类里面的方法,难道你就需要去强行new出来,让这俩产生关系。当发生关系后期你又想隔离这种关系,你将会怎么处理,难道要每个类去清理吗?所以出现依赖倒转,我们不再类中依赖类,而是类中依赖抽象,当你想要x你就告诉抽象,当你不想要x想要y,你也去告诉抽象,当你要了100个,你就告诉抽象100次,不要了就不告诉抽象,而不需要100个人的都去告诉下。同时抽象只可以获取能获得(private不行等),也可以通过抽象去定义对象,让子类在运行时替换,方便扩展,这就是开放封闭原则。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

子鞋

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

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

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

打赏作者

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

抵扣说明:

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

余额充值