![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java设计模式
文章平均质量分 70
small_clear
要成为代码王的男人
展开
-
5. 目标精通--用java写设计模式:开闭原则
文章目录1. 什么是开闭原则2. 反例:1.1会出现的问题:3.改进1. 什么是开闭原则对扩展开放,对修改关闭对扩展开放: 对提供功能的这一方(功能提供方)来说,是可以进行功能扩展的对修改关闭: 当功能提供方对一个功能进行扩展了,而使用该功能的地方(功能使用方),不用对代码进行修改,也就是说,功能的扩展不会对已经存在的代码产生任何影响所有的原则都是为了最后能实现开闭原则2. 反例:创建图形基类Shape创建矩形类Rectangle 与圆形类Circle 都继承Shape创建Graph原创 2020-11-20 17:05:23 · 106 阅读 · 0 评论 -
4. 目标精通--用java写设计模式:里式替换原则
文章目录什么是里式替换原则什么是里式替换原则里式替换原则为了让我们在代码中正确的使用继承当我们使用继承时,对已经写好的父类中的方法进行重写,就可能会对整个继承的体系造成破坏里氏替换原则通俗的来讲就是:子类可以扩展父类的功能,但不能改变父类原有的功能。也就是不要重写父类的方法如果一定要重写父类的方法,可以换一种形式:B继承了A,而B要重写A类中的a1方法,不要直接去重写可以创建一个更高级的父类Base,将A与B要共用的方法放到Base中,让A与B都继承Base,此时A与B处于同原创 2020-11-20 15:27:05 · 102 阅读 · 0 评论 -
3. 目标精通--用java写设计模式:依赖倒转原则
文章目录1. 什么是依赖倒转原则2. 实例3. 改进1. 什么是依赖倒转原则高层模块不应该依赖于低层模块,二者都应该依赖其抽象抽象不应该依赖细节,细节应该依赖于抽象.抽象指的就是抽象类和接口其中心思想就是面向接口编程使用接口和抽象类的目的是制定规范,而不设计任何具体的操作,把细节交给实现类去完成通俗来讲就是,我们不应该创建一个孤零零的类,而应该创建接口,规定好方法,以及每个方法的功能,然后具体的方法实现由实现类操作,而我们在就进行方法调用时,应该是通过接口来调用方法,而不是直接new一个实现类原创 2020-11-20 14:36:04 · 189 阅读 · 4 评论 -
2. 目标精通--用java写设计模式:接口隔离原则(Interface Segregation Principle)
文章目录1. 基本介绍:2. 实际用例3. 用例改进1. 基本介绍:客户端不应该依赖它不需要的接口,即一个类对另一个类的依赖应该建立在最小的接口上2. 实际用例创建接口interface1,其中有5个未实现的方法 operation1~5创建类A实现interface1中的5个接口创建类B实现interface1中的5个接口创建类C,类C中需要依赖interface1中的1,2,3接口创建类D,类D中需要依赖interface1中的1,3,4接口接下来,我们发现,不论是类C还是类D,原创 2020-11-20 11:14:07 · 99 阅读 · 0 评论 -
1. 目标精通--用java写设计模式:单一职责原则
文章目录1、什么是单一职责原则1、什么是单一职责原则从类的角度来说:面向对象中,我们是通过类来创建对象的。所以我们可以有老虎类、狮子类、豹子类。将不同的动物创建为不同的类。但是最好不要创建一个老虎狮子类,即是老虎,又是狮子,那样就违背了单一职责原则从方法的角度来说:通常在一个类中,会有很多方法,也可以称为行为。假设我们创建了一个老虎类,那个这只老虎肯定有进食、奔跑、睡觉、跳舞这些行为。那么我们就应该再老虎类中创建eat()、run()、sleep()、dance()这些方法,这样就遵原创 2020-09-11 11:34:55 · 233 阅读 · 0 评论 -
0、目标精通--用java写设计模式:简单理解设计模式
文章目录java设计模式简单理解设计模式的目的七大设计原则下一章:单一职责原则ps: 不知道能不能坚持更新~~~~~java设计模式简单理解设计模式的目的在编写代码中,我们常常只为了完成某项功能而编写业务代码,只在乎代码是否能跑通。至于其扩展性、健壮性、重用性、灵活性等却几乎不在考虑范围之中。所以每当需求修改,或某些地方要做出变动的时候,就变得特别麻烦。经常会出现修改一个地方,导致其他地方出现bug。这仅仅是举例说明的其中一种情况,灵活的使用设计模式,就能避免这些问题。代码重用性(相同的代码,不需原创 2020-09-10 15:49:37 · 101 阅读 · 0 评论