欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

-java 类加载器,

来源: javaer 分享于  点击 10654 次 点评:262

-java 类加载器,


 

java 虚拟机中,可以安装多个类加载器,系统默认的主要

有三个:BootStrap ExtClassLoader,AppClassLoader

 

 类加载器也会死java类,因为其他加载器也会加载当前

类。必须有一个不是java类,这个就是:BootStrap

 

 

 java虚拟机中所有类

 

首先排除当前线程的类加载器老加载一个类

 

BootStrap类负责加载jre/lib/rt.jar中的类,

ExtClassLoader 类加载器负责加载jre/lib/ext/*.jar中的类

AppClassLoader类加载器负责加载classpath 中指定的类

 

还可以ClassLoader.loadCLass()  方法加载。。

 

 

每个类加载加载类时,又先委托其上级类加载器。

 

自定义类加载器:

 我们自定义类加载器的时候必须继承类加载器,对于我们自定义类加载器,我们只需要实现一些我们自己的方法,对于 findclass() 我们交给父类来实现,(委托的时候会向上级寻找类加载器),

自定义类加载器可以实现对我们自己类的加密,

由于类加载器的委托机制,我们在做项目的时候我们有时候明明已经导入了相关的jar 包,但是运行时候还是报错。抱不到类,,这是由于相关类加载器加载类的时候在相应目录下并没有相关的类,比如classpath 中的类。ExtClassLoader 类加载器并不能加载到。遇到这个问题吧相关jar包放入Ext目录下即可,,

相关文章

    暂无相关文章
相关栏目:

用户点评