java基础知识,题目描述如图所示

1.为什么第一个打印语句为null,第二个打印语句为perfect?图片描述

阅读 2k
2 个回答

执行匿名内部类时,还没有把 “ArrayList” 的引用赋值给 NAMES

第一句 System.out.println(NAMES) 的时候,代码块

new ArrayList<String>() {{
    add("prefect");
    System.out.println("init: " + NAMES); 
}};

还没有执行完成,所以此时 NAMES 还没有成为这个 “ArrayList”的引用,所以是 null

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题