1 / 6
文档名称:

servlet入门(二).doc

格式:doc   大小:84KB   页数:6页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

servlet入门(二).doc

上传人:253214894 2018/9/16 文件大小:84 KB

下载得到文件列表

servlet入门(二).doc

相关文档

文档介绍

文档介绍:Servlet入门(二)——传智播客学****笔记类装载器Java虚拟机使用每一个类的第一件事就是将该类的字节码装载进来,装载类字节码的功能是由类装载器完成的,类装载器负责根据一个类的名称来定位和生成类的字节码数据后返回给Java虚拟机。类装载器本身也是一个Java类,Java虚拟机也允许开发人员编写自己的类装载器,以便通过其他各种特殊方式来产生类字节码。不管类装载器采用什么方式,只要能够在内存中制造出给Java虚拟机调用类字节码即可,所以,把类装载器描述为类字节码的制作器更容易让人理解。当一个类被加载以后,Java虚拟机将其编译为可执行代码存储在内存中,并将索引信息存储进一个HashTable中,其索引关键字为与之相对应的类名。Java程序中的类本身也是一种事物,它也可以用一个Java类描述,这个特殊的类名就叫Class。类装载器装载某个类的字节码的过程实际上就是在创建Class类的一个实例对象,这个Class类的实例对象封装的内容正好是当前加载的类的字节码数据。要想在程序中获得代表某个类的字节码数据的Class实例对象,可以采用以下三种方式:,例如,(),例如,newDate().getClass()(“类名”),例如,(“”),Java虚拟机的程序都调用ClassLoader类的loadClass方法来加载类,ClassLoader是一个抽象类,真正的类装载器必须是ClassLoader的子类。Class类中定义了一个getClassLoader方法,用于返回它所描述的类的类加载器对象,这个返回对象的类型就是ClassLoader。类装载器的基本策略一个类装载器本身也是一个Java类,所以,类装载器自身也需要被另外一个类装载器装载。Java虚拟机中内嵌了一个称为Bootstrap的类装载器,它属于Java虚拟机的内核,不用类装载器装载。Bootstrap类装载器负责加载Java核心包中的类(),,即表示是Bootstrap类装载器。ExtClassLoader类装载器负责加载存放在<JAVA_HOME>/jre/lib/ext目录下的jar包中的类,AppClassLoader负责加载应用程序的启动执行类。类装载器的委托模式一个Java虚拟机中的所有类装载器采用具有父子关系的树形结构进行组织,在实例化每一个类装载器对象时,需要为其指定一个父级类装载器对象,如果没有指定的话,()方法返回的系统类装载器作为其父级类装载器对象。系统类装载器通常被设置为启动应用程序的AppClassLoader,。ExtClassLoader是AppClassLoader的父级类装载器,ExtClassLoader没有父级类装载器。每个ClassLoader本身只能分别加载特定位置和目录中的类,但是,

最近更新