
设计模式
爱吃鱼油
这个作者很懒,什么都没留下…
展开
-
工厂方法模式
一、简单工厂模式 简单工厂模式又称静态工厂方法模式。重命名上就可以看出这个模式一定很简单。它存在的目的很简单:定义一个用于创建对象的接口。 先来看看它的组成: 1) 工厂类角色:这是本模式的核心,含有一定的商业逻辑和判断逻辑,用来创建产品 2) 抽象产品角色:它一般是具体产品继承的父类或者实现的接口。 3) 具体产品角...转载 2017-06-15 22:24:18 · 266 阅读 · 0 评论 -
JAVA设计模式之抽象工厂模式
抽象工厂模式代码 产品类: //发动机以及型号 public interface Engine { } public class EngineA extends Engine{ public EngineA(){ System.out.println("制造-->EngineA"); } }转载 2017-06-15 22:41:12 · 274 阅读 · 0 评论 -
单例模式的7种写法
第一种(懒汉,线程不安全): public class Singleton { private static Singleton instance; private Singleton (){} public static Singleton getInstance() { if (instance == null) { instance = new Sin转载 2017-06-04 16:39:30 · 774 阅读 · 0 评论 -
filter过滤器过滤特殊字符
主管提出一个需求,原创 2014-11-19 16:31:06 · 5867 阅读 · 0 评论 -
设计模式--门面模式
门面模式定义: 提供一个统一的接口去访问多个子系统的多个不同的接口,它为子系统中的一组接口提供一个统一的高层接口。使用子系统更容易使用。 在这个对象图中,出现了两个角色: 门面(Facade)角色:客户端可以调用这个角色的方法。此角色知晓相关的(一个或者多个)子系统的功能和责任。在正常情况下,本角色会将所有从客户端发来的请求委派到相应的子系统去。 子系统(subsystem)角色:转载 2017-06-19 17:04:16 · 350 阅读 · 0 评论 -
Java动态代理的两种实现方法
AOP的拦截功能是由java中的动态代理来实现的。说白了,就是在目标类的基础上增加切面逻辑,生成增强的目标类(该切面逻辑或者在目标类函数执行之前,或者目标类函数执行之后,或者在目标类函数抛出异常时候执行。不同的切入时机对应不同的Interceptor的种类,如BeforeAdviseInterceptor,AfterAdviseInterceptor以及ThrowsAdviseIntercepto...转载 2017-06-12 15:12:37 · 3264 阅读 · 0 评论 -
Java的三种代理模式
1.代理模式代理(Proxy)是一种设计模式,提供了对目标对象另外的访问方式;即通过代理对象访问目标对象.这样做的好处是:可以在目标对象实现的基础上,增强额外的功能操作,即扩展目标对象的功能.这里使用到编程中的一个思想:不要随意去修改别人已经写好的代码或者方法,如果需改修改,可以通过代理的方式来扩展该方法举个例子来说明代理的作用:假设我们想邀请一位明星,那么并不是直接连接明星,而是联系明星的经纪人...转载 2018-02-22 16:23:46 · 335 阅读 · 0 评论 -
设计模式--策略模式
策略模式的结构 策略模式是对算法的包装,是把使用算法的责任和算法本身分割开来,委派给不同的对象管理。策略模式通常把一个系列的算法包装到一系列的策略类里面,作为一个抽象策略类的子类。用一句话来说,就是:“准备一组算法,并将每一个算法封装起来,使得它们可以互换”。下面就以一个示意性的实现讲解策略模式实例的结构。 这个模式涉及到三个角色: ● 环境(Context)角色:持有一个Strategy...转载 2018-02-23 15:55:08 · 239 阅读 · 0 评论 -
设计模式--观察者模式
软件设计模式的分类创建型创建对象时,不再由我们直接实例化对象;而是根据特定场景,由程序来确定创建对象的方式,从而保证更大的性能、更好的架构优势。创建型模式主要有简单工厂模式(并不是23种设计模式之一)、工厂方法、抽象工厂模式、单例模式、生成器模式和原型模式。结构型用于帮助将多个对象组织成更大的结构。结构型模式主要有适配器模式adapter、桥接模式bridge、组合器模式component、装饰器...转载 2017-06-19 17:50:19 · 437 阅读 · 0 评论