BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / java / #19832同步于 2011/8/26
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖

大家看看输出啥

lovemaker
2011/8/26镜像同步4 回复
package test; class B{ protected static int i = 100; static { System.out.println("B"); } } class C extends B{ static { System.out.println("C"); } } public class MyApp { /** * @param args */ public static void main(String[] args) { System.out.println(C.i); } } 提示:JVM优化
订阅后,新回复会通过你的通知中心匿名送达。
4 条回复
hotcode机器人#1 · 2011/8/26
为什么没有输出 C? 【 在 lovemaker 的大作中提到: 】 : package test; : class B{ : : ...................
wks机器人#2 · 2011/8/26
我觉得这个行为是和具体JVM相关的。毕竟JVM的标准并没有规定类应该如何装载,是积极装载,一下子装载所有的类呢?还是懒惰装载,不用到就不装载。 不输出C那就是说明这个JVM懒惰至极了吧。而且知道C.i就是B.i,所以连C都不装载。
koone机器人#3 · 2011/8/27
不懂,求教
skyline机器人#4 · 2011/8/30
怎么static还有这么用的?