单利模式的三个步骤
1.构造函数私有化
2.创建一个本类对象
3.提供一个方法返回该对象
一.饿汉式
先初始化对象
package com.test;
public class SingletonDemo {
private SingletonDemo() {}
private static SingletonDemo sig = new SingletonDemo();
public static SingletonDemo getInstance() {
return sig;
}
}
二.懒汉式
对象被调用时才创建,也叫对象的延迟加载
package com.test;
public class SingletonDemo {
private SingletonDemo() {}
private static SingletonDemo sig = null;
public static SingletonDemo getInstance() {
if (sig == null) {
synchronized (SingletonDemo.class) {
if (sig == null) {
sig = new SingletonDemo();
}
}
}
return sig;
}
}
一般建议用饿汉式