一、饿汉模式
第一步先将类的默认构造方法私有化
第二步创建类的唯一实例
第三步提供一个用于获取实例的方法
public class Singleton1 {
//1.将构造方法私有化,不允许外部直接创建对象
private Singleton1(){
}
//2.创建类的唯一实例
private static Singleton1 instance = new Singleton1();
//3.提供一个用于获取实例的方法
public static Singleton1 getInstance(){
return instance;
}
}
二、懒汉模式
第一步先将类的默认构造方法私有化
第二步创建类的唯一实例的索引
第三步提供一个用于获取实例的方法(如已创建就直接获取,否则再继续创建)
public class Singleton2 {
//1.将构造函数私有化
private Singleton2(){
}
//2.声明类的唯一实例,使用private static 修饰
private static Singleton2 instance;
//3.提供一个用于获取实例的方法,使用public static修饰
public static Singleton2 getInstance(){
if(instance==null){
instance = new Singleton2();
}
return instance;
}
}
533

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



