
设计模式
王小禾
武汉理工大学
展开
-
java设计模式--代理模式(三)
上一节讲了jdk动态代理,这节讲引入第三方jar包的动态代理//CglibProxy.javaimport java.lang.reflect.Method;import net.sf.cglib.proxy.Enhancer;import net.sf.cglib.proxy.MethodInterceptor;import net.sf.cglib.proxy.Meth原创 2017-05-19 16:09:18 · 227 阅读 · 0 评论 -
设计模式--观察者模式
观察者模式(又被称为发布-订阅(Publish/Subscribe)模式,属于行为型模式的一种,它定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象(被观察者)。这个主题对象在状态变化时,会通知所有的观察者对象,使他们能够自动更新自己。观察者模式的类结构关系:角色:Subject 或 Observable:抽象主题(抽象被观察者),抽象主题角色把所有观察者对象保存在一个集原创 2017-09-26 16:42:29 · 276 阅读 · 0 评论 -
设计模式--装饰器(Decorator)模式
意图示例1汉堡的组合结构及角色示例2人的行为的组合何时使用java IO1. 意图装饰器模式的意图是在运行时组合操作的新变化。动态地给一个对象添加一些额外的职责。相比生成子类更加灵活。装饰模式能够实现动态的为对象添加功能,是从一个对象外部来给对象添加功能。通常给对象添加功能,要么直接修改对象添加相应的功能,要么派生对应的子类来扩展,抑或是使用对象组合的方式。显然,直接修改对应的类这种方式原创 2017-09-25 20:11:46 · 365 阅读 · 0 评论 -
设计模式--享元模式
享元模式是设计模式中少数几个以提高系统性能为目的设计模式之一。 –《java性能优化》参考: JAVA设计模式之享元模式http://blog.csdn.net/jason0539/article/details/22908915 单例模式与享元转载 2017-09-05 20:32:13 · 253 阅读 · 0 评论 -
工厂模式模拟Spring的bean加载过程
Spring工厂模式1 工厂接口2 工厂实现3 模拟Spring中bean的配置原创 2017-08-23 23:03:45 · 1661 阅读 · 0 评论 -
设计模式--工厂模式
1. 模式作用轻松方便地构造对象实例,而不必关心构造对象实例的细节和复杂过程。2. 分类工厂模式主要是为创建对象提供过渡接口,以便将创建对象的具体过程屏蔽隔离起来,达到提高灵活性的目的。 工厂模式可以分为三类: 1)简单工厂模式(Simple Factory) (又称静态工厂模式)2)工厂方法模式(Factory Method) 3)抽象工厂模式(Abstract Factory) 这三种原创 2017-08-22 18:02:11 · 184 阅读 · 0 评论 -
设计模式--单例模式
设计模式 单例模式详解实现方式1 单线程环境下懒汉式不好2 多线程环境下懒汉式不好3 加同步锁时前后两次判断实例是否存在可行4 饿汉式建议使用5 静态内部内建议使用1. 概念 如果一个类始终只能创建一个实例,则这个类被称为单例类,这种模式为单例模式。注意两点:将构造器私有化,不允许外界通过构造器创建对象;通过公开的静态方法向外界返回类的逶迤实例。2.实现方式2.1 单线程环境下懒汉式(不好原创 2017-08-22 13:30:49 · 472 阅读 · 0 评论 -
java设计模式--代理模式(一)
这里主要讲智能引用代理。代理模式实现分为静态代理和动态代理。静态代理静态代理模式其实很常见,比如买火车票这件小事:黄牛相当于是火车站的代理,我们可以通过黄牛买票,但只能去火车站进行改签和退票。在代码实现中相当于为一个委托对象realSubject提供一个代理对象proxy,通过proxy可以调用realSubject的部分功能,并添加一些额外的业务处理,同时可以屏蔽realSu原创 2017-05-18 17:03:25 · 1012 阅读 · 0 评论 -
java设计模式--代理模式(二)
java设计模式之代理模式--动态代理。这是Spring中的AOP的核心。原创 2017-05-19 15:31:59 · 315 阅读 · 0 评论 -
设计模式--责任链模式
本文参考:职责链模式(chain of responsibility)转载 2019-03-16 18:00:24 · 105 阅读 · 0 评论