大佬知道为啥运行结果是0 1吗,百思不得其解 |
本帖最后由 darius 于 2022-1-11 11:01 编辑
这不是考你jvm的类加载机制 在准备阶段 会把静态变量在方法区分配内存,并设置默认初始值。 1、首先执行main中的getInstance(); 执行 |
本帖最后由 ekucn 于 2022-1-11 10:58 编辑
这是新数组的时候不会初始化该类. 你把第二行换到后面
复制代码 再试试。。。。答案就是1.1了。。。 话说什么面试还问这种单例模式问题。。。 |
跟执行顺序有关 你debug一下就知道了,执行完getInstant后又对x赋值0 |
都他妈是八股文 |
百思不得骑姐?
简单说就是构造类的时候,先执行构造函数,然后再执行静态变量赋值 |
我觉得你Debug一下你就知道什么原因了 |
大佬厉害,能说这么清晰明了 |
懂了,厉害 |
看点正常的东西吧。别学成了孔乙己。。。。 |