我们知道一个类通常被加载到元空间中,但是非静态内部类呢?加载后它去了哪里?
class OuterClass {
/**
* Where is this class? would this class goes to the meta space?
*/
class InnerClass{
public void method(){
/**
* And where is this class?
*/
class InnerClassInMethod{
public void method(){
System.out.println("Hello");
}
}
new LocalClass().method();
}
}
}
什么时候会加载这个类?它会和外部类一样被加载还是延迟到一个实例被请求?而且,同样的问题,他们将被卸载?