本帖最后由 田向向 于 2012-7-6 20:20 编辑
看毕老师视频第6天最后一个视频的时候有点小疑问,特此请教各位:
class Single
{
private static Single s = null;
private Single(){}
public static Single getInstance()
{
if(s==null) //1
{
synchronized(Single.class)
{
if(s==null) //2
-->A
s = new Single();
}
}
return s;
}
}
疑问1:A初始化出去之后,B再进来,为什么在2处判断不为空?
疑问2:C再进来,为什么1处也不为空了,为什么连锁都不读了?
请高手解答
|