声明是否会导致类加载

public class X {
public static void main(String []f) {
D d = null;
System.out.println("声明");
d = new D();
System.out.println("new");
}
}
public class D {
static {
System.out.println("D loading");
}
}
输出

声明
D loading
new

 

结论:不会

分析为什么不会,声明时,并不需要知道D的结构,d只是一个指针

况且java11后直接用var了

 

posted on 2025-02-16 21:57  silyvin  阅读(6)  评论(0)    收藏  举报