标题: 类在什么时候加载? [打印本页] 作者: jxlovqqvo 时间: 2014-12-21 18:02 标题: 类在什么时候加载? 类在什么时候加载?创建对象的时候么?作者: 提米特 时间: 2014-12-22 09:29
new 类名 的时候就是加载的时候了作者: duluhua 时间: 2014-12-22 09:58
1.类的加载是在使用到该类的时候,就把该类的字节码加载进入内存。如果你没使用到该类,就不加载。我理解的是,无论在什么地方,只要涉及到该类、类方法、类成员变量等等,只要用到和该类相关的,就要加载类到内存。
2.对象是类的实例,只有你再new的时候,才创建类的实例。
3.举个例子:
------------------
class A{}
public class B{
public static void main(String[] args){
System.out.println("ddd");
}
}
运行,只会加载B,执行main, 因为这里跟A没有任何关系,所以不加载A
-----------------------------------
对比:
class A{}
public class B{
public static void main(String[] args){
A a = new A();//创建了A的对象,也就是说用到A了,所以再这里需要加载A的字节码进入内存
//而对象a则是在new A()的时候创建的。
System.out.println("ddd");
}
}