设计模式
23中设计模式
枫林メ
仗剑天涯,四海为家
展开
-
Builder
Builder public class Person { int id; String name; int age; double weight; int score; Location loc; private Person() {} public static class PersonBuilder { ...原创 2019-12-02 17:53:41 · 220 阅读 · 0 评论 -
代理模式
代理模式 使用一个代理对象将对象包装起来,然后用该代理对象来取代该对象,任何对原始对象的调用都要通过代理,代理对象决定是否以及何时调用原始对象的方法 1、静态代理 要求被代理类和代理类同时实现相应的一套接口,通过代理类调用重写接口的方法,实际上调用的是原始对象的同样的方法 package com.proxy; public class Proxy im...原创 2019-11-29 23:01:25 · 247 阅读 · 0 评论 -
观察者(Observer)
Observer 观察者(Observer)模式的定义:指多个对象间存在一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。这种模式有时又称作发布-订阅模式、模型-视图模式,它是对象行为型模式。 package com.observer; import java.util.ArrayList; import java.util.List; class ...原创 2019-11-29 15:15:38 · 262 阅读 · 0 评论 -
单例模式(完美写法)
Singleton 单例模式,属于创建类型的一种常用的软件设计模式。通过单例模式的方法创建的类在当前进程中只有一个实例(根据需要,也有可能一个线程中属于单例,如:仅线程上下文内使用同一个实例) 枚举单利可以防止反序列化 , 防止反射后重新new 实例。 package com.mashibing.tank; import java.util.Properties; //Propert...原创 2019-11-22 17:19:12 · 289 阅读 · 0 评论 -
模板方法(钩子函数)
template method 什么叫模版方法模式: 模版方法其实就是父类定义了一整套的骨架流程,而其中的某些方法,需要子类来完成,这样子的好处是,方法流程已经定义好,子类要做的事情就是按着流程和模版自己写实现。 package com.thread; public class TemplateMethod { public static void main(St...原创 2019-11-07 15:05:35 · 581 阅读 · 0 评论