分享

ClassLoader

 jerry_008 2017-04-05

1、作用

ClassLoader负责向JVM提供所需class及文件对象,所有对象都首先加载到ClassLoader中。

ClassLoader是一个树形结构。

2、分类

ClassLoader分为BootStrapExtensionApp

BootStrap---------负责加载jdk的类

Extension----------负责加载/ext下的类

App          ----------负责加载用户类

3、获取ClassLoader

this.getClass.getClassLoader(); //当前类的ClassLoader

Thread.currentThread().getContextClassLoader(); //当前线程的ClassLoader

ClassLoader.getSystemClassLoader(); //系统ClassLoader,即App ClassLoader

4、类初始化方法

//4.1、静态类加载

Class cls = Class.forName("com.test.A"); 

A a = (A)cls.newInstance(); 

//4.2、静态类加载

ClassLoader cl   = this.getClass.getClassLoader();//或者其他两种方式

Class cls = cl.loadClass("com.rain.B"); 

B b = (B)cls.newInstance(); 

//4.3new

A a = new A();

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多