简单单例模式1:
public class Singleton {
private static Singleton instance = new Singleton();
private Singleton() {
}
public static Singleton getInstance() {
return instance;
}
}
简单单例模式2:(懒汉式)
懒汉式保证只有当需要用到类对象是才创建对象实例
public class Singleton {
private static Singleton instance = null;
private Singleton() {
}
public static Singleton getInstance() {
if (instance == null) {
instance = new Singleton();
}
return instance;
}
}
多线程情况下的单例模式:
public class Singleton{
private static Singleton instance=null;
private Singleton(){}
public Singleton getInstance(){
if(instance==null){
synchronized(Singleton.class){
if(instance==null){
instance=new Singleton();
}
}
}
return instance;
}
}
参考:
http://blog.sina.com.cn/s/blog_6151984a0100kutz.html
http://www.iteye.com/topic/60179
http://www.iteye.com/topic/537563