
设计模式
老鼠扛刀满街找猫@
这个作者很懒,什么都没留下…
展开
-
常用的设计模式-java
设计模式 1 面向对象设计模式原则 1.1 开闭原则 思想:在开发代码迭代的过程中,对扩展开发,对修改关闭。 简单的说,对已使用的类的改动是通过增加代码,而不是修改原有的代码。 1.2 单一职责原则 思想:高内聚,低耦合。 简单的说,每个类的职责越少越好,最理想是每个类只有一个职责,对外只提供功能;类与类之间的依赖关系越小越好。 1.3 里式替换原则 思想:任何父类出现的地方,都可以用用它的子类替代。 简单的说,子类可以扩展父类的功能,但不能改变父类原有的功能。同一个继承体系的对象应该具有共同的行为特征。原创 2020-11-30 21:42:32 · 140 阅读 · 0 评论 -
设计模式-代理模式
设计模式-代理模式 介绍 代理模式分为:静态代理、动态代理。 代理模式是给某一个对象提供一个代理对象,代理对象拥有原对象的引用,代理对象替原对象去执行这个行为。通俗的来讲代理模式就是我们生活中常见的中介。 1 静态代理模式 1.1 UML类图 1.2 示例 代码示例:代理点coffee 创建服务类接口 public interface Coffee { void orderCoffee(); } 瑞幸咖啡 public class LuckinCoffee implements Cof原创 2020-11-26 21:41:26 · 176 阅读 · 0 评论 -
设计模式-装饰模式
设计模式-装饰模式 1 介绍 装饰模式就是给一个对象增加一些新功能‘、或者是为执行方法新增前置流程,后置流程,而且是动态的。要求装饰模式和被装饰模式都实现同一个接口。 2 UML类图 3 代码 接口 TargetSource public interface TargetSource { void method(); } 被装饰对象 class Source public class Source implements TargetSource { @Override原创 2020-11-24 23:03:43 · 90 阅读 · 0 评论 -
设计模式-适配器模式
设计模式-适配器模式 1 介绍 适配器模式是将某个类的接口转化成客户起到的接口的表现形式,目的是消除接口不匹配所造成类的兼容性问题。适配器模式分为三类:类适配器模式、对象适配器模式、接口适配器模式。 2 类适配器模式 思想:有一个source类,拥有同一个方法Method1,带适配,目标接口是targetSource,通过Adapter类,将source扩展到targetSource中。 2.1 UML类图 2.1 代码 目标适配器类class Source public class Source {原创 2020-11-22 14:48:29 · 128 阅读 · 0 评论 -
设计模式-构建者模式
设计模式-构建者模式 1 介绍 建造者模式:将多个简单的对象按产品创建顺序构建成一个复杂的对象。它提供了一种创建复杂对象的最佳方式。 优点: 1、建造者独立,易扩展。 2、便于控制细节风险。 缺点: 1、产品必须有共同点,范围有限制。 2、如内部变化复杂,会有很多的建造类。 角色: 构建者(Builder):构建者,复杂产品的集成者,所有的产品组件由它进行组装。 产品(Product):被构建的复杂对象。 2 示例 2.1 示例简介 超市项目简单产品族管理: 每个商品(Product):都有共同的原创 2020-11-16 22:06:39 · 329 阅读 · 0 评论 -
设计模式-Java实现
文章目录java之设计模式1 面向对象设计模式原则1.1 开闭原则1.2 单一职责原则1.3 里式替换原则1.4 依赖倒转原则1.5 接口分离原则1.6 迪米特原则2 设计模式2.1 设计模式类型2.2 创建型模式-简单工厂模板2.2.1 介绍2.2.2 UML类图2.2.3 优缺点2.2.4 代码示例2.3 创建型模式-工厂方法模式2.3.1 介绍2.2.2 UML类图2.3.3 优缺点2.3.4 代码示例 java之设计模式 1 面向对象设计模式原则 1.1 开闭原则 思想:在开发代码迭代的过程中,对扩原创 2020-11-06 16:27:14 · 97 阅读 · 0 评论 -
设计模式-原型模式
设计模式-原型模式 1 介绍 原型模式的思想:将一个对象作为原型,对其进行复制、克隆,产生一个与原对象类似的新对象。 浅拷贝:将一个对象复制后,基本数据类型的变量都会重新创建;引用类型,指向的还是原对象所指向的,可以根据hasCode判断。 深拷贝:将一个对象复制后,无论是基本数据类型或者是引用类型的变量,都是重新创建。 被拷贝的对象需要实现Cloneable接口。 简单的说,深拷贝是创建全新的对象,浅对象复制的不彻底。 注意:被拷贝的对象类,都要继承序列化接口Serializable 2 示例 Ab原创 2020-11-05 10:08:08 · 136 阅读 · 1 评论