public class TestDynamicLoading {
class A{}
public static void main(String[] args) {
//在main方法中定义类并创建是允许的。
new TestDynamicLoading().new A();//这样就允许了。先创建TestDynamicLoading类,通过该类创建内部类。与default没有关系。
System.out.println("---------------------------");
new B();
new C();
new D();
}
}
class B{}
class C{
{System.out.println("CCCCCCC");}
}
class D{
{System.out.println("DDDDDDD");}
class A{}
public static void main(String[] args) {
//在main方法中定义类并创建是允许的。
new TestDynamicLoading().new A();//这样就允许了。先创建TestDynamicLoading类,通过该类创建内部类。与default没有关系。
System.out.println("---------------------------");
new B();
new C();
new D();
}
}
class B{}
class C{
{System.out.println("CCCCCCC");}
}
class D{
{System.out.println("DDDDDDD");}
}
//——>apply
可以看出:
[Loaded reflect.TestDynamicLoading from .../bin/]
[Loaded reflect.TestDynamicLoading$A from .../bin/]
---------------------------
[Loaded reflect.B from .../bin/]
[Loaded reflect.C from .../bin/]
CCCCCCC
[Loaded reflect.D from .../bin/]
DDDDDDD
[Loaded java.lang.Shutdown from ...\jre\lib\rt.jar]
[Loaded java.lang.Shutdown$Lock from ...\jre\lib\rt.jar]