- 1、本文档共8页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
J的ava技术知识
深入研究Java类加载机制
类加载是Java程序运行的第一步,研究类的加载有助于了解JVM执行过程,并指导开发者采取更有效的措施配合程序执行。
研究类加载机制的第二个目的是让程序能动态的控制类加载,比如热部署等,提高程序的灵活性和适应性。
?/zhuxing/archive/2008/08/08/220841.html
一、简单过程?
Java程序运行的场所是内存,当在命令行下执行:
java HelloWorld
命令的时候,JVM会将HelloWorld.class加载到内存中,并形成一个Class的对象HelloWorld.class。
其中的过程就是类加载过程:
1、寻找jre目录,寻找jvm.dll,并初始化JVM;
2、产生一个Bootstrap Loader(启动类加载器);引导类装载器用本地代码实现的类装入器,将Java_Runtime_Home/lib的类库加载到内存。由于引导类加载器涉及到虚拟机本地实现细节,开发者无法直接获取到启动类加载器的引用,所以不允许直接通过引用进行操作。
3、Bootstrap Loader自动加载Extended Loader(标准扩展类加载器),并将其父Loader设为Bootstrap Loader。【扩展类加载器是由 Sun 的 ExtClassLoader(sun.misc.Launcher$ExtClassLoader) 实现的。它负责将 Java_Runtime_Home /lib/ext 或者由系统变量 java.ext.dir 指定位置中的类库加载到内存中。开发者可以直接使用标准扩展类加载器。】
4、Bootstrap Loader自动加载AppClass Loader(系统类加载器),并将其父Loader设为Extended Loader。【系统类加载器是由 Sun 的 AppClassLoader(sun.misc.Launcher$AppClassLoader)实现的。它负责将系统类路径(CLASSPATH)中指定的类库加载到内存中。开发者可以直接使用系统类加载器。】
5、最后由AppClass Loader加载HelloWorld类。
线程上下文类加载器
以上就是类加载的最一般的过程。
?
二、类加载器各自有哪些信誉好的足球投注网站的目录为了弄清楚这个问题,首先还要看看System类的API doc文档。键 相关值的描述 java.version Java 运行时环境版本 java.vendor Java 运行时环境供应商 java.vendor.url Java 供应商的 URL java.home Java 安装目录 java.vm.specification.version Java 虚拟机规范版本 java.vm.specification.vendor Java 虚拟机规范供应商 Java 虚拟机规范名称 java.vm.version Java 虚拟机实现版本 java.vm.vendor Java 虚拟机实现供应商 Java 虚拟机实现名称 java.specification.version Java 运行时环境规范版本 java.specification.vendor Java 运行时环境规范供应商 Java 运行时环境规范名称 java.class.version Java 类格式版本号 java.class.path Java 类路径 java.library.path 加载库时有哪些信誉好的足球投注网站的路径列表 java.io.tmpdir 默认的临时文件路径 piler 要使用的 JIT 编译器的名称 java.ext.dirs 一个或多个扩展目录的路径 操作系统的名称 os.arch 操作系统的架构 os.version 操作系统的版本 file.separator 文件分隔符(在 UNIX 系统中是“/”) path.separator 路径分隔符(在 UNIX 系统中是“:”) line.separator 行分隔符(在 UNIX 系统中是“/n”) 用户的账户名称 user.home 用户的主目录 user.dir 用户的当前工作目录 ?
可惜这个帮助文档并不全,直接用程序打印出来如下:
????????????????for?(Map.EntryObject, Object entry : System.getProperties().entrySet()) {?
????????????????????????System.out.println(entry.getKey()+\t+entry.getValue());?
????????????????}
?
Java(TM) SE
您可能关注的文档
最近下载
- 2025年医疗资源均衡配置政策对公共卫生服务的提升作用.docx
- 地质建模软件:Surpac二次开发_(22).地质建模质量控制与验证.docx VIP
- 个人授信及担保协议.doc
- 汽车电子电磁兼容emc标准分析资料精.pdf VIP
- 湖南省部分学校2024-2025学年高一上学期期末考试物理试卷(原卷版及答案).docx VIP
- 必威体育精装版宝宝填色涂色本(精排WORD打印版).doc VIP
- 地质建模软件:Surpac二次开发_(5).三维地质建模技术.docx VIP
- JJF 1554-2015 旋进旋涡流量计型式评价大纲.pdf
- 侧柏公益林质量精准提升技术规程.docx VIP
- 餐具清洁小能手教案.docx VIP
文档评论(0)