设计模式
1024个秘密
好好工作,好好学习,好好生活。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
设计模式
设计模式总结前人经验,为自己所用;更好的解决新问题;培养将业务需求转成技术实现的能力;解耦;设计模式的七大原则开闭原则:对扩展开放,对修改关闭;单一指责原则:约定一个类、一个接口、一个方法只做一件事情保证单一性和纯洁性;依赖倒置原则:通过抽象的接口/类使得类/模块之间相互不影响,实现松耦合;接口隔离原则:尽量保证接口的纯洁性,不依赖不需要的接口;迪米特原则(最少依赖原则):一个...原创 2019-06-23 16:32:41 · 128 阅读 · 0 评论 -
设计模式之观察者模式
一、基本概念观察者模式定义了对象之间的一对多依赖,让多个观察者对象同时监听一个主体对象,当主体对象发生变化的时候,它的所有的依赖者(观察者)都会收到通知并更新,属于行为型模式。观察者模式有时也叫发布订阅模式。二、生活实例消息通知三、代码示例3.1 JDK方式/** * @description:JDK提供的观察者的实现方式 * @author: annecheng,2019-0...原创 2019-07-14 16:45:17 · 143 阅读 · 0 评论 -
设计模式之装饰者模式
一、基本概念装饰者模式是指在不改变元有对象的基础之上,将功能附加对象上,提供了比集成更有弹性的替代方案(扩展原有对象功能),属于结构型模式。适用场景:1、用于扩展一个类的功能或者给一个类增加职责。2、动态的给一个对象添加功能,这些功能也可以动态的撤销掉。二、生活实例煎饼果子加火腿加鸡蛋还是煎饼果子。三、代码实例/** * @description:煎饼果子基础套餐 * @au...原创 2019-07-14 16:40:14 · 188 阅读 · 0 评论 -
设计模式之适配器模式
一、基本概念适配器模式是指将一个类的接口转换成客户期望的另一个接口,使得原本的接口不兼容的类可以一起工作。 属于结构型设计模式。使用场景:1、已经存在的类,它的方法和需求不匹配(方法结果相同或相似)的情况。2、适配器模式不是软件设计阶段需要考虑的模式,是随着软件维护由于不同产品、不同厂家造成功能类似而接口不相同情况下的解决方案。二、生活实例三、代码实例/** * @descrip...原创 2019-07-14 16:35:12 · 141 阅读 · 0 评论 -
设计模式之模板模式
一、基本概念模板模式,又叫模板方法模式,是指定义一个算法的骨架,并允许子类为一个或者多个步骤提供实现。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法的某些步骤,属于行为型设计模式。使用场景:1、一次性实现一个算法的不变部分,将可变行为留给子类来实现。不变的部分一般声明为final,可以被重写的方法一般称为钩子方法,即在父类中给一个默认实现,在子类中可以重写,一般声明为抽象方法。...原创 2019-07-14 16:29:22 · 242 阅读 · 0 评论 -
设计模式之代理模式
一、基本概念代理模式是指为其他对象提供的一种代理,以控制对这个对象的访问。代理对象在客户端与目标对象之间起到中介作用,属于结构型设计模式。可以保护目标对象,增强目标对象。二、生活实例房产中介~三、代码实例/** * @description:订单类 * @author: annecheng,2019-06-29 17:42 */public class Order { ...原创 2019-07-14 16:18:47 · 162 阅读 · 0 评论 -
设计模式之原型模式
原型模式是指原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。调用者不要知道任何创建细节,不调用构造函数。使用场景:1、类在初始化的时候资源过多;2、new产生的一个对象需要非常繁琐的过程;3、构造函数很复杂;4、循环体中产生大量对象的时候。例子:BeanUtils.copyProperties();JSON.parseObject()Guaua 提供的Copy工具...原创 2019-07-14 16:09:46 · 134 阅读 · 0 评论 -
设计模式之单例模式
确保一个类在任何情况下都绝对只有一个实例,并提供一个全局的访问点,隐藏其所有的构造方法。经典案例:ServletContext、ServletConfig、ApplicationContext、DBPool一、饿汉式单例在单例首次加载的时候就创建实例版本一:public class HungrySingleton {private static final HungrySingleto...原创 2019-06-23 22:41:37 · 147 阅读 · 0 评论 -
设计模式之工厂模式
工厂模式把对象的创建过程封装起来;一、简单工厂模式由一个工厂对象决定创建出哪一种产品的实例;// 课程public interface Course { public void study{};}//实现类1:Java课程public class JavaCourse implements Course { public void stduy{ System.out.pri...原创 2019-06-23 20:20:20 · 607 阅读 · 0 评论 -
设计模式之大总结
设计模式在于理解,而不只在于形式。不要为了套用设计模式而使用设计模式,而是在业务上遇到问题的时候,很自然的想到设计模式可以做为一种解决方案。设计模式是一门艺术,来源于生活,属经验之谈。...原创 2019-07-14 16:47:00 · 149 阅读 · 0 评论
分享