有一种特殊情况使第一个类运行(这就是为什么必须将main()方法声明为静态的,并以字符串数组作为参数的原因)。加载该类并运行该类后,以后将通过类加载器尝试加载类。最简单的是,类加载器创建由字符串名称引用的类主体的平面名称空间。Java中的每个类都使用自己的类加载器来加载其他类。所以,如果
ClassA.class引用
ClassB.class则
ClassB需要上的类路径
ClassLoader中
ClassA,或者其父母。
线程上下文
ClassLoader是一个特殊的上下文,因为它是当前
ClassLoader正在运行的线程的当前上下文。这在多类加载器环境中很有用。可以从中的类创建对象
ClassLoaderC,然后将其传递到拥有的线程
ClassLoaderD。在这种情况下,
Thread.currentThread().getContextClassLoader()如果对象要加载本身不可用的资源,则需要直接使用
ClassLoader。



