GoF23种设计模式之创建型模式之单态模式
2013-05-30 16:09
435 查看
1概述
保证一个类仅有一个实例,并提供一个访问它的全局访问点。2适用性
1.当类只能有一个实例而且客户可以从一个总所周知的访问点访问它的时候。2.当这个唯一实例应该是通过子类化可扩展的,并且客户应该无需更改代码就能使用一个扩展的实例的时候。
3参与者
Singleton:定义一个Instance操作,允许客户访问它的唯一实例。Instance是一个类的操作,可能复杂创建它自己的唯一实例。4类图
5示例
Singletonpackage cn.lynn.singleton; public class Singleton { private static Singleton instance; private Singleton() { } public static Singleton getInstance() { if (instance == null) { instance = new Singleton(); } return instance; } }Test
package cn.lynn.singleton; public class Test { public static void main(String[] args) { Singleton instance1 = Singleton.getInstance(); Singleton instance2 = Singleton.getInstance(); System.out.println(instance1); System.out.println(instance2); System.out.println(instance1 == instance2); } }Result
cn.lynn.singleton.Singleton@175d6ab cn.lynn.singleton.Singleton@175d6ab true
相关文章推荐
- GoF23种设计模式之创建型模式之单态模式
- GoF23种设计模式之创建型模式之单态模式
- GoF23种设计模式之创建型模式之建造者模式
- 工厂方法模式GoF23种设计模式之创建型模式之工厂方法模式
- 模式对象GoF23种设计模式之创建型模式之建造者模式
- GoF23种设计模式之创建型模式之建造者模式
- GoF23种设计模式之创建型模式之原型模式
- GoF23种设计模式之创建型模式之原型模式
- GoF23种设计模式之创建型模式之原型模式
- 设计模式之创建型模式——简单工厂(又称为静态工厂不属于GOF23种设计模式以内)
- GoF23种设计模式之创建型模式之建造者模式
- GoF23种设计模式之创建型模式之抽象工厂模式
- GoF23种设计模式之创建型模式之工厂方法模式
- GoF23种设计模式之创建型模式之抽象工厂模式
- GoF23种设计模式之创建型模式之工厂方法模式
- GoF23种设计模式之创建型模式之抽象工厂模式
- GoF23种设计模式之创建型模式之工厂方法模式
- 23种设计模式之创建型模式
- java 23种设计模式之 迭代器模式(cursor模式)GOF 23-1
- GoF23种设计模式之行为型模式之责任链模式