立即加载/“饿汉模式”
public class MyObject { private static MyObject myObject = new MyObject();
public MyObject() {
}
public static MyObject getInstance(){
//此代码版本为立即加载
//此版本的代码的缺点是不能有其他实例变量
//因为getInstance()方法没有同步
//所以有可能出现非线程的安全问题
return myObject;
}
}
public class MyThread extends Thread{ @Override
public void run() {
System.out.println(MyObject.getInstance().hashCode());
}
}
public class Run { public static void main(String[] args) {
MyThread t1 = new MyThread();
MyThread t2 = new MyThread();
MyThread t3 = new MyThread();
t1.start();
t2.start();
t3.start();
}
//控制台打印的hashcode是同一个值,说明对象是同一个。
}
以上是 立即加载/“饿汉模式” 的全部内容, 来源链接: utcz.com/z/513427.html