设计模式
上善若水211
微信小程序:趣味藏头诗
展开
-
设计模式之责任链模式
设计模式之责任链模式 处理者抽象类Handler 客户对象Customer 责任链模式就是客户对象发起一个请求,根据这个请求的具体参数,从责任链中的众多对象中,选择出一个处理者对象来处理这个请求。如何选择出呢?每个处理者对象先判断自己是否可以处理,是的话,就自己处理,中断传递;否的话,就向后继传递请求,一级一级的传递下去。 处理者抽象类Handler: publ原创 2017-07-12 17:27:30 · 1095 阅读 · 0 评论 -
设计模式之工厂模式
工厂模式 工厂类Factory,负责创建具体的对象 接口类shape,所有子类的接口 众所周知,java有一个反射机制,根据类名来创建实例对象;工厂模式实际上也实现了这个反射机制,通过工厂类Factory,根据传入的类名来创建对应的实例对象(当然,这里利用了类的向上转型)。 工厂类Factory public class Factory { public原创 2017-07-13 14:22:14 · 279 阅读 · 0 评论 -
设计模式之适配器模式
适配器模式就是把一个不能使用的对象转换成一个可以使用的对象,使得系统适应不同的场景。 这里的例子是:电脑要通过三项插头充电,但现在只有一个二项插头,所以要new 一个适配器,将二项插头转化成三项插头,从而使得电脑正常充电。 在适配器类中加入 二项插头的对象, 方便对其进行转化。 当然实现适配器有继承和组合两种方式,但我们毫无疑问是采用组合的方式实现适配器,组合可以灵活使用,方便适原创 2017-08-03 14:28:28 · 205 阅读 · 0 评论 -
设计模式之单例模式
单例模式其实很简单,就是将构造函数私有化,然后通过自定义一个方法来获得类的实例。 单利模式分为饿汉模式、饱汉模式 饿汉模式SingletonHungry public class SingletonHungry { private SingletonHungry(){ } private static SingletonHungr原创 2017-08-01 12:51:21 · 269 阅读 · 1 评论 -
设计模式之观察者模式
设计模式之观察者模式 观察者对象Observer 目标对象Subject 观察者设计模式适用于用户订阅栏目,然后在每次发布新消息的时候自动给订阅用户发送消息。我这里拿天气预报做例子,天气作为目标对象,市民作为观察者对象每次在天气预报更新天气信息后,自动给订阅的市民推送天气预报直接上代码 目标对象接口(Observer) public interface Subject {原创 2017-07-10 15:02:02 · 287 阅读 · 0 评论 -
设计模式之代理模式
代理对象 被代理对象 代理模式分为静态代理和动态代理 代理模式就是在一个方法前后加上一些自定义的业务处理 Spring的AOP就是利用了动态代理模式 实际应用比如:一张大图片一时半会加载不出来,这时候就可以用代理模式,先用一张图片代替它,登加载出来在替换 分布计算方式RMI和Corba等都是Proxy模式的应用 静态代理 代理类和被代理类都需要实现一个原创 2017-08-02 13:47:25 · 377 阅读 · 0 评论 -
SpringAop
DefaultAopProxyFactory @Override public AopProxy createAopProxy(AdvisedSupport config) throws AopConfigException { if (config.isOptimize() || config.isProxyTargetClass() || hasNoUserSuppliedProxyIn...原创 2019-05-29 14:14:45 · 256 阅读 · 0 评论