- 2
- 0
- 约1.19万字
- 约 10页
- 2018-01-06 发布于河南
- 举报
JVM加载class文件的原理
当Java编译器编译好.class文件之后,我们需要使用JVM来运行这个class文件。那么最开始的工作就是要把字节码从磁盘输入到内存中,这个过程我们叫做【加载】。加载完成之后,我们就可以进行一系列的运行前准备工作了,比如: 为类静态变量开辟空间,将常量池存放在方法区内存中并实现常量池地址解析,初始化类静态变量等等。这篇文章我们要好好谈谈JVM是如何加载class文件的?
1、JVM加载类的过程
当我们使用命令来执行某一个Java程序(比如Test.class)的时候:java Test(1) java.exe 会帮助我们找到 JRE ,接着找到位于 JRE 内部的 jvm.dll ,这才是真正的 Java 虚拟机器 , 最后加载动态库,激活 Java 虚拟机器。(2) 虚拟机器激活以后,会先做一些初始化的动作,比如说读取系统参数等。一旦初始化动作完成之后,就会产生第一个类装载器 ―― Bootstrap Loader(启动类装载器) 。(3) Bootstrap Loader 所做的初始工作中,除了一些基本的初始化动作之外,最重要的就是加载 Launcher.java 之中的 ExtClassLoader(扩展类装载器) ,并设定其 Parent 为 null ,代表其父加载器为 BootstrapLoader 。(4) 然后 Bootstrap Loader 再要求
您可能关注的文档
- Java语言程序设计第1章 Java入门.ppt
- 第1课 Java程序编译环境.ppt
- JAVA开发自学教材10Struts 1基础.ppt
- jdk配置问题.doc
- Java JDK 6学习笔记第10章.ppt
- 02 入门准备.ppt
- JDK下、安装和配置.doc
- jdkh环境变量.doc
- JDK - Tomcat - JSP - Servlet 配置运行全攻略.doc
- J2EE环境搭建1.doc
- 2026住宅小区消防改造建筑方案(执行版,含总平面布置/疏散流线/消防节点).docx
- 2026制造工厂人力资源规划与排班配置方案(执行版,含排班模型/岗位编制/缺口清单).docx
- 2026人工智能企业内训实施计划(执行版,含培训安排/案例任务/考核清单).docx
- 2026仓储物流园总平面布置建筑方案(执行版,含车流组织/仓位分区/消防间距).docx
- 2026老旧办公楼节能改造建筑方案(执行版,含围护结构/节能设备/施工节点).docx
- 2026Python文件批量重命名与归档脚本方案(执行版,含文件样例/处理脚本/归档规则).docx
- 2026企业会计准则长期股权投资核算指南(执行版,含成本法分录/权益法分录/减值检查表).docx
- 2026社区养老服务中心项目可行性研究报告(执行版,含服务需求/建设内容/运营预算).docx
- 2026物流园冷链仓储项目可行性研究报告(执行版,含选址分析/设备配置/财务测算).docx
- 2026企业会计准则现金流量表编制口径手册(执行版,含分类口径/填报模板/勾稽检查表).docx
最近下载
- 危大工程巡视检查记录表(模版).docx VIP
- 2026届高考作文复习:材料作文审题方法+课件.pptx
- 《笠翁对韵》原文及译文.docx VIP
- 禾川伺服驱动问题解决大全V1(内部使用).pdf VIP
- 2025年项目管理专业组织变革与流程再造项目经验教训总结专题试卷及解析.pdf VIP
- 2025年无人机驾驶员执照欧洲(EASA)无人机法规对比专题试卷及解析.pdf VIP
- 2025年演出票务经营自律规范与“黄牛”治理专题试卷及解析.pdf VIP
- 2025年公共营养师学生营养改善计划相关政策与教育专题试卷及解析.pdf VIP
- 能源计量数据可信验证中的边缘-云协同架构.pdf VIP
- 江苏省南京市溧水区2019-2020学年七年级下学期期末数学试题【含答案】.doc VIP
原创力文档

文档评论(0)