看视频时,类加载器没太理解,现在再整理下几个要点
来源:互联网 发布:php 前后端分离怎么做 编辑:程序博客网 时间:2024/06/07 01:36
类加载器负责把类加载到java虚拟机即JVM中,指定类的名称,类加载器就会定位这个类的定义,每一个java类必须由类加载器加载。
当启动JVM的时候,我们可以使用三个类加载器:引导类加载器、扩展类加载器、应用程序类加载器
1.引导类加载器仅仅负责加载核心的Java库,比如位于<JAVA_HOME>/jre/lib 目录下的vm.jar,core.jar。这个类加载器,是JVM核心部分,是用native代码写成的。
2. 扩展类加载器负责加载扩展路径下的代码,一般位于<JAVA_HOME>/jre/lib/ext 或者通过java.ext.dirs 这个系统属性指定的路径下的代码。这个类加载器是由sun.misc.Launcher$ExtClassLoader 实现的。
3.应用程序类加载器负责加载java.class.path(映射系统参数 CLASSPATH的值) 路径下面的代码,这个类加载器是由 sun.misc.Launcher$AppClassLoader 实现的。
当处理类加载器时,父委托模式是一个需要理解的关键概念,它规定:类加载器在加载自己的类之前,可以委托先加载父类,父类加载器可以是客户化的类加载器或引导类加载器。但是有一点很重要,类加载器只能委托自己的父类加载器,而不能是子类加载器,即只能向上不能向下。
自定义类加载器:虽然在绝大多数情况下,系统默认提供的类加载器实现已经可以满足需求。但是在某些情况下,您还是需要为应用开发出自己的类加载器。比如您的应用通过网络来传输 Java 类的字节代码,为了保证安全性,这些字节代码经过了加密处理。这个时候您就需要自己的类加载器来从某个网络地址上读取加密后的字节代码,接着进行解密和验证,最后定义出要在 Java 虚拟机中运行的类来。
- 看视频时,类加载器没太理解,现在再整理下几个要点
- 最近看的几个视频
- 优化,20170808看视频整理
- Flex加载swf的几个要点
- Flex加载swf的几个要点
- Flex加载swf的几个要点
- 理解OpenStack中的OpenvSwitch的几个要点
- JAVA类要点整理
- 计算机也可以看“视频”,理解“视频”
- 各个需要整理的知识点 现在只是几个路径
- 看视频自学jsp以及知识整理
- 看nettiers整理出来的开发codesmith模板技术要点
- 看nettiers整理出来的开发codesmith模板技术要点
- 看nettiers整理出来的codesmith模板编写要点
- 时频分析要点整理
- Oracle几个难理解概念整理
- 自己在看一些android教学视频后,整理的一个文件读取和写入类
- 看了几个mix10&pdc09的视频
- web.xml文件学习
- 笔试题目收集(3)
- Silverlight5 创建右键菜单菜单
- WINDOWS平台下使用ACE框架的异步串口操作
- HDU 1425 sort
- 看视频时,类加载器没太理解,现在再整理下几个要点
- 做好百度竞价正确的思路是关键
- 用DELPHI播放WAV和MP3
- JAVA服务端分解
- org.cocos2dx.lib
- addEventListener函数解析
- Linux中查看进程的多线程
- 谈谈机器学习(Machine Learning)大家 (full version)
- 学生管理系统总结和SQLiteDatabase注意事项