设计模式

小德 2021-12-02 12:57:59
Categories: Tags:

设计模式

5种构建型模式

工厂方法模式

抽象工厂模式

单例模式

1.私有化构造方法,确保不能被new()

2.提供一个可用唯一的对象

3.提供一个公有的方法给别人调用

饿汉模式:静态私有成员,已初始化

1
2
3
4
5
6
7
8
9
10
11
private static EagerSingleton instance = new EagerSingleton();//静态私有成员,已初始化

private EagerSingleton()
{
//私有构造函数
}

public static EagerSingleton getInstance() //静态,不用同步(类加载时已初始化,不会有多线程的问题)
{
return instance;
}

懒汉模式:静态私用成员,没有初始化

1
2
3
4
5
6
7
8
9
10
11
12
13
private static LazySingleton intance = null;//静态私用成员,没有初始化

private LazySingleton() {
//私有构造函数
}

public static synchronized LazySingleton getInstance() //静态,同步,公开访问点
{
if (intance == null) {
intance = new LazySingleton();
}
return intance;
}

建造型模式

原型模式

7种结构型模式

适配器模式

桥接模式

组合模式

装饰模式

外观模式

享元模式

代理模式

11种行为型模式

责任链模式

命令模式

解释器模式

迭代器模式

中介者模式

备忘录模式

观察者模式

状态模式

策略模式

模板方法模式

访问者模式