有时我们只需要某个类只有一个对象,不希望有更多对象。比如数据连接对象只需要一个,
这种设计方法叫单例模式。
了解了单例模式后,你一定会想到静态类。它和静态类很像,为何不干脆使用静态类?
实际上,它们是有一些区别的:
Singleton.java
class Singleton {
static private Singleton instance;
private Singleton() {
}
public static Singleton getInstance() {
if (instance == null) {
instance = new Singleton();
}
return instance;
}
}
Test.java
public class Test {
public static void main(String[] args) {
Singleton s1 = Singleton.getInstance();
System.out.println(s1);
Singleton s2 = Singleton.getInstance();
System.out.println(s2);
Singleton s3 = Singleton.getInstance();
System.out.println(s3);
}
}
输出结果
Singleton@7852e922
Singleton@7852e922
Singleton@7852e922
三个对象输出的结果一样,说明实际只创建了一个对象。
暂无评论,赶紧发表一下你的看法吧。