3.单件模式
2017-09-06 16:21
295 查看
单件( SingleTon)模式只产生一个对象,要利用private构造函数和静态方法实现
public class TestSingleton {
public static void main(String[] args){
Singleton s1 = Singleton.makeSingleton();
s1.setName("Hello, Li!");
Singleton s2 = Singleton.makeSingleton();
s2.setName("Hello, Wang!");
System.out.println(s1.getName()); //显示Hello, Wang!
System.out.println(s2.getName()); //显示Hello, Wang!
}
}
class Singleton {
private String name;
private static Singleton single = new Singleton();
private Singleton(){ //不允许直接创建对象
}
void setName(String name){
this.name=name;
}
String getName(){ return this.name;}
static Singleton makeSingleton(){ //这里并不建造新对象
return single;
}
}我还记得cocos2d中的一个“管家”类就是一个单例模式生成的对象。
推荐2个参考博客:
http://blog.csdn.net/lemon_tree12138/article/details/46006071 详解单例模式
http://blog.csdn.net/haoel/article/details/4028232 单例模式中的陷阱
public class TestSingleton {
public static void main(String[] args){
Singleton s1 = Singleton.makeSingleton();
s1.setName("Hello, Li!");
Singleton s2 = Singleton.makeSingleton();
s2.setName("Hello, Wang!");
System.out.println(s1.getName()); //显示Hello, Wang!
System.out.println(s2.getName()); //显示Hello, Wang!
}
}
class Singleton {
private String name;
private static Singleton single = new Singleton();
private Singleton(){ //不允许直接创建对象
}
void setName(String name){
this.name=name;
}
String getName(){ return this.name;}
static Singleton makeSingleton(){ //这里并不建造新对象
return single;
}
}我还记得cocos2d中的一个“管家”类就是一个单例模式生成的对象。
推荐2个参考博客:
http://blog.csdn.net/lemon_tree12138/article/details/46006071 详解单例模式
http://blog.csdn.net/haoel/article/details/4028232 单例模式中的陷阱
相关文章推荐
- C语言和设计模式(之单件模式)02
- Scala设计模式Part I. 创建模式——3.工厂方法
- Python和Singleton (单件)模式
- 单件模式的C++标准实现
- java 单件模式
- [设计模式]单件模式
- 单件模式
- 单件模式
- 多线程单件模式-Java
- .NET2.0设计模式 (.NET 2.0 Patterns) 1 -- 单件模式(Sington Patterns)
- 设计模式----单件模式
- 设计模式六:singleton单件模式——对象创建型模式
- .NET设计模式(2):单件模式(Singleton Pattern)
- 设计模式(二)单件模式Singleton(创建型)
- C#面向对象设计模式纵横谈(2): Singleton单件(创建型模式)
- 设计模式学习之路——Singleton 单件模式
- 单件模式(Singleton Pattern)(二):HeadFirst中的巧克力工厂的设计
- Framework中的单件模式
- 设计模式2---单件模式
- 多线程Singleton单件模式