Test test = new Test();
- 创建过程
- 1.申请内存 成员变量赋默认值
- 2.调用构造方法 初始化成员变量
- 3.test建立指引
下面重点来了
public class Test {
/**
* 单例模式
*/
//首先私有化构造方法
private Test(){}
private static volatile Test test;
public static Test getInstance(){
if(test == null){//外部这个判断主要是为了效率
synchronized (Test.class){//保证原子性 可见性
if(test == null){
try {
Thread.sleep(1);
}catch (Exception e){
e.printStackTrace();
}
test = new Test();
}
}
}
return test;
}
public static void main(String[] args) {
Test test = new Test();
for(int i = 0;i < 100;i++){
new Thread(()->{
System.ou