getClassLoader

来源:互联网 发布:京东大数据部门怎么样 编辑:程序博客网 时间:2024/06/09 14:32

 

可以通过ClassLoader.getSystemClassLoader()获取应用类加载器

也可以通过Class.getClassLoader()获取具体某个类的类加载器,即该类是有哪个类加载器加载的(本质是哪个类加载器调用了defineClass()方法)。

他们之间符合默认的父类委托机制。

 

 JavaCode 

 


public class PrintClassLoader {
    
public static void main(String[] args) {

        ClassLoader cl=PrintClassLoader.
class.getClassLoader();
//      ClassLoader cl=ClassLoader.getSystemClassLoader();
        
        
while(cl!=null){
            System.out.println(cl);
            cl=cl.getParent();
        }
    }
}


 

获取的引导类加载器为null,并不是没有类加载器,而是因为该类加载器是由C/C++代码实现的,无法通过Java代码获得。

当试图获得一个类的ClassLoadernull时,并不意味着没有类加载器为该类服务,而是指加载它的是引导类加载器。

0 0
原创粉丝点击