其他
【026期】面试官:说说双重检查加锁单例模式为什么两次校验?
>>号外:关注“Java精选”公众号,回复“2021面试题”,领取免费资料!“Java精选面试题”小程序,3000+ 道面试题在线刷,最新、最全 Java 面试题!
package cn.yqh.interview;
/**
* @author 袁
* @create 2019/8/21-11:48
*/
public class Singleton {
private static volatile Singleton singleton = null;
private Singleton() {
}
public static Singleton getInstance(){
//第一次校验singleton是否为空
if(singleton==null){
synchronized (Singleton.class){
//第二次校验singleton是否为空
if(singleton==null){
singleton = new Singleton();
}
}
}
return singleton;
}
public static void main(String[] args) {
for (int i = 0; i < 100; i++) {
new Thread(new Runnable() {
public void run() {
System.out.println(Thread.currentThread().getName()+" : "+Singleton.getInstance().hashCode());
}
}).start();
}
}
}
private static volatile Singleton singleton = null;
作者:yuan_qh
blog.csdn.net/yuan_qh/article/details/99962482
【016期】面试官问:a==1 && a==2 && a==3 是 true 还是 false?
【017期】面试官问:Java 中 for、foreach、stream 哪个处理效率更高?
【018期】JDK1.8 中 HashMap 底层实现原理源码分析,你 get 到了吗?
【019期】告诉面试官,我能优化 Group By,而且知道得很深!
【020期】面试官问:Java 遍历 Map 集合有几种方式?效率如何?
【021期】面试官问:Java 中 new 一个对象的过程中发生了什么?这有些夸张了!
【022期】ArrayList 使用 forEach 遍历时删除元素会报错吗?