1.比较安全的一种实现.
public class Singleton{
// 这里阻止了用户直接实例化Singleton
private Singleton(){}
private static Single instance=new Singleton();
// 用户只能通过这个函数获取唯一的Singleton
public static Singleton getInstance(){
return instance;
}
}
2.比较高效的一种实现.
public class Singleton{
private static Singleton instance=null;
public static synchronized Singleton getInstance(){
// 要用的时候再把Singleton建立起来
if(instance==null){
instance=new Singleton();
}
return instance;
}
}
public class Singleton{
// 这里阻止了用户直接实例化Singleton
private Singleton(){}
private static Single instance=new Singleton();
// 用户只能通过这个函数获取唯一的Singleton
public static Singleton getInstance(){
return instance;
}
}
2.比较高效的一种实现.
public class Singleton{
private static Singleton instance=null;
public static synchronized Singleton getInstance(){
// 要用的时候再把Singleton建立起来
if(instance==null){
instance=new Singleton();
}
return instance;
}
}
本文介绍了单例模式的两种实现方式:一种是在类加载时就创建实例,这种方式相对安全;另一种是在第一次使用时才创建实例,这种方式较为高效。这两种方式各有优缺点,适用于不同的场景。
748

被折叠的 条评论
为什么被折叠?



