
设计模式
刘信坚的博客
少说话,多做事
展开
-
Java之23种设计模式-工厂方法模式
一 简单工厂模式 在说工厂方法模式之前,先看看简单工厂模式。简单工厂模式分为三种。 1)普通 就是建立一个工厂类,对实现了同一接口的一些类进行实例的创建。首先看下关系图: 下面举一个发短信和邮箱的例子: Sender.java package com.lxj.simplefactory; public interface Sender { public void se...原创 2018-07-29 19:26:20 · 782 阅读 · 0 评论 -
Java之23种设计模式-抽象工厂模式
一 抽象工厂模式(工厂方法模式请点我) 工厂方法模式和抽象工厂模式不好分清楚,他们的区别如下: 工厂方法模式: 一个抽象产品类,可以派生出多个具体产品类。 一个抽象工厂类,可以派生出多个具体工厂类。 每个具体工厂类只能创建一个具体产品类的实例。 抽象工厂模式: 多个抽象产品类,每个抽象产品类可以派生出多个具体产品类。 一个抽象工厂类,可以派生出多个具体工厂类。 每个具体工厂类可以创建多个具体产...原创 2018-07-29 21:15:32 · 227 阅读 · 0 评论 -
Java之23种设计模式-单例模式
单例模式 单例对象(Singleton)是一种常用的设计模式。在 Java 应用中,单例对象能保证在一个 JVM 中,该对象只有一个实例存在。这样的模式有几个好处: 1、某些类创建比较频繁,对于一些大型的对象,这是一笔很大的系统开销。 2、省去了 new 操作符,降低了系统内存的使用频率,减轻 GC 压力。 3、有些类如交易所的核心交易引擎,控制着交易流程,如果该类可以创建多...原创 2018-07-30 14:28:11 · 225 阅读 · 0 评论 -
JAVA实现静态代理
首先看看什么是代理模式。 一 代理模式 使用一个代理对象将对象包装起来,然后用该代理对象来取代该对象,任何对原始对象的调用都要通过代理,代理对象决定是否以及何时调用原始对象的方法 二 静态模式 要求被代理类和代理类同时实现相应的一套接口,通过代理类调用重写接口的方法,实际上调用的是原始对象的同样的方法。如下图: Cilent调用Source的method(...原创 2018-07-27 23:40:24 · 8191 阅读 · 9 评论 -
JAVA实现动态代理
一 动态代理 动态代理是指客户通过代理类来调用其它对象的方法,并且是在程序运行时根据需要动态创建目标类的代理对象,下面直接看代码: 二 测试 Animal.java package com.lxj.dynamic.proxy; public interface Animal { public void action(); public void breat...原创 2018-07-28 00:56:16 · 948 阅读 · 2 评论