学习设计模式有一段时间了,对设计模式有一个体会,就是没那么难,就是设计程序遵循一些原则,让代码可复用,在修改的时候不用涉及太多的类,扩展方便,抽象工厂模式名字听起来抽象,但理解起来一点也不抽象,用语言可能不好理解,我喜欢通过代码理解,然后成为自己的东西。
抽象工厂模式:提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。
>以项目上线时想换另外一个数据库为例子...
分类:
其他好文 时间:
2014-11-04 15:04:52
阅读次数:
198
前面一章说的是工厂方法模式,我们知道工厂方法模式中的具体工厂角色与具体产品juese...
分类:
编程语言 时间:
2014-11-03 22:38:59
阅读次数:
184
观察者模式也是比较简单的一种模式,可能从名字上理解无法明白,但真正理解其含义之后就非常简单了,说实话在自己来发的项目中自己也用到过,只不过不知道它叫观察者罢了,只要懂面向对象的对继承多态理解很深的,玩观察者模式很随意就能用到项目中去。
这本书用一个很形象的故事解释了观察者模式,故事情景:公司员工当老板不在时有的炒股有的看NBA,为了防止老板偷袭,让前台MM通知。即前台MM充当了观察...
分类:
其他好文 时间:
2014-11-03 20:56:52
阅读次数:
232
概念策略模式定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法独立于使用它的客户而独立变化。(原文:The Strategy Pattern defines a family of algorithms,encapsulates each one,and makes...
分类:
编程语言 时间:
2014-10-31 15:26:34
阅读次数:
160
状态模式(State Pattern)是设计模式的一种,属于行为模式。 定义(源于Design Pattern):当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类。 状态模式主要解决的是当控制一个对象状态的条件表达式过于复杂时的情况。把状态的判断逻辑转移到表示不同状态的一系.....
分类:
编程语言 时间:
2014-10-31 15:09:10
阅读次数:
189
在日常工作中,有很多对象,我们只需要一个。比如:线程池, 缓存,注册表等。如果制造出多个实例,就会导致许多问题,如程序行为异常,资源使用过量等。这就需要对对象的构建进行控制,使其只能产生一个对象。这就是本篇要讲的设计模式——singleton(单例)。
首先给出单例模式的定义:确保只有一个类只有一个实例,并提供一个全局访问点。
那么,要如何实现单例模式,使得一个类只能产生一个对象呢?请看下面的...
分类:
编程语言 时间:
2014-10-30 17:04:58
阅读次数:
248
//单例模式之懒汉式
class Singleton{
private static Singleton instance = null;
private Singleton(){
}
public static Singleton getSingleton(){
if(instance == null){
//同步代码块,保证安全性...
分类:
其他好文 时间:
2014-10-27 15:46:01
阅读次数:
215
//单例模式之饿汉式
class Single{
private static Single single = new Single();
private Single(){
}
public static Single getSingleInstance(){
return single;
}
}
public class TestSt...
分类:
其他好文 时间:
2014-10-27 15:45:49
阅读次数:
200
//被代理接口
interface ClothFactory{
public void productCloth();
}
//被代理类
class NikeClothFactory implements ClothFactory{
@Override
public void productCloth() {
System.out.println("Nike 生产衣服");
}
}...
分类:
其他好文 时间:
2014-10-27 15:43:54
阅读次数:
189
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
import java.lang.reflect.Proxy;
//接口
interface MyInterface {
public void action();
}
// 被代理类
class MyObject implements ...
分类:
其他好文 时间:
2014-10-27 15:42:35
阅读次数:
179