【发布时间】:2015-03-30 22:32:24
【问题描述】:
我知道也体验过JVM会延迟加载类,即即使类被导入,如果这个类不使用也不会加载,只有在主动需要的时候才会加载。
我不确定 JDK 是否经常使用这种延迟加载策略,或者在某些情况下会使用其他实现,是否有任何 JDK 规范或文档说明了这一点?
我有这个问题是因为我发布的类导入了一些不存在且不会被使用的类。
【问题讨论】:
我知道也体验过JVM会延迟加载类,即即使类被导入,如果这个类不使用也不会加载,只有在主动需要的时候才会加载。
我不确定 JDK 是否经常使用这种延迟加载策略,或者在某些情况下会使用其他实现,是否有任何 JDK 规范或文档说明了这一点?
我有这个问题是因为我发布的类导入了一些不存在且不会被使用的类。
【问题讨论】:
下面的程序说是,
package code;
import code.one.Test1;
public class code {
public static void main(String[] args) {
Test1 test1=null;
}
private static void callmethod() {
}
}
package code.one;
public class Test1 {
static{
System.out.println("hello");
}
}
但是在 main 方法中如果你写 Test1 test1=new Test1();而不是 Test1 test1=null;你会得到 o/p
【讨论】: