JAVA设计模式大总结(一)JAVA设计模式的六大原则 以及类之间的六大关系

引用:学习设计模式能够提升我们代码的可读性和可维护性,规范了代码总体的框架,因此我打算先拿一段时间来好好的总结一下设计模式,在此之前,先讲讲设计模式遵循的原则–往后会结合例子出一档设计模式的总结内容

声明:
(一)此篇大多都是文字例子,阅读可能会有点小枯燥
(二)在后面总结设计模式的时候,我还会根据例子和代码不断加深对这些原则的理解,会再后面的文章中不断提及这六大原则

那么现在就直接进入主题:

一.设计模式的六大原则

(一)单一职责原则 (即一个类只负责一项职责)
例:类定义的方法在不同之类调用之前会起冲突时,比如在动物类里定义一个吃草的方法,那么当该动物类牛羊类调用就不会有有问题,如果是狼类的话就会起冲突
解决:在该类中用多态写法再定义适合不同动物的方法
总:联系生活,做到细分功能

(二)里氏替换原则(即子类可以扩展父类的功能,但不要改变父类已有的功能)
例:父类定义好有了函数体的方法,就尽量不要去改动了(也就是覆盖),除了抽象方法需要重写外

(三)依赖倒置原则(面向接口编程)
例:接口太好用了,不信你去查查。 在很多时候,不同的类间能使用相同的方法,要是你去继承一个父类,那很多特有的方法不就得自己写了吗,但接口可以多实现,可以提高代码的可维护性以及可读性

(四)接口隔离原则(尽量把每个接口的做到细分)
例:如果不细分的话,那在实现该接口时很多不需要的方法也必须要重写,那不仅增加了代码量,还显得有点刁钻

(五)迪米特法则(降低耦合,局部变量中,不要引入新的类)
例:在定义一个方法的时候,里面最好不要引入新的类,因为外部人员看不到方法里面的情况,出了什么问题都有可能找不到

(六)开闭原则(对拓展开放,对修改关闭)

二.类之间的六大关系

1.依赖–只要类中用到了对方,如方法间,变量间,返回值等,就说是依赖关系
2.泛化–继承关系就是泛化关系,泛化关系是依赖的特例,至于为什么你自己想想就知道了
3.实现–实现接口,也是依赖关系的一种
4.关联:即类与类间的关系,有单向一对一和双向一对一
例如:人有手机卡,手机卡有人(使用者),所以类中可以互相包含–双向一对一
5.聚合–整体跟部分可以分开,关联关系的特例
例:手机卡跟人,手机卡可丢,人还能存在;但是当人没了,那手机卡就不能有了的时候就是组合关系
6.组合–整体与部分缺一不可,可以说是聚合关系的升级版,所以也是关联关系的特例
例:头和人缺一不可,不信你自己假设一方没了另一方还能存在吗
总结:上面几点只是术语以及概念性总结,至于怎么用,就要多联系一下生活就行了

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值