前言

本书完整而准确地阐释了Java虚拟机各方面的细节,围绕ava虚拟机整体架构、编译器、class文件格式,加载、链接与初始化、指令集等核心主题对Java拟机进行全面而深入的分析。深刻揭示Java虚拟机的工作原理。同时,书中不仅完整地讲述了由Java SE 8所引入的新特性.例如对包含默认实现代码的接口方法所做的调用,还讲述了为支持类型注解及方法参数注解而对lass文件格式所做的扩展,并阐明了cass文件中各属性的含义,以及字节码验证的规则。

本书主要内容:

  • 阐释Java虚拟机与Java的关系和发展历程。
  • 概览Java虚拟机整体架构,包括dass文件格式、数据类型、原始类型.引用类型、运行时数据区、栈帧,浮点算法。异常等。
  • 详述如何将以ava语言编写的程序转换为Java虚拟机指令集,涉及常量、局部变量控制结构、算术运算、参数接收、方法调用、数组、操作数栈.异常处理、同步与注解等。
  • 深入分析用来表示编译后的类和接口的lass文件格式,主要包括Classile文件结构、描述符.常量池字段、方法。属性.格式检查、代码约束与class文件校验等。
  • 定义Java虚拟机启动以及类和接口的加载,链接和初始化过程.
  • 阐释并列举Java虚拟机指令集。

第1章引言

  • 1.1 简史
  • 1.2 Java虚拟机
  • 1.3 各章节摘要
  • 1.4说明
  • 1.5反馈

 

第2章Java虚拟机结构

  • 2.1 class文件格式
  • 2.2数据类型
  • 2.3原始类型与值
  • 2.4引用类型与值
  • 2.5运行时数据区
  • 2.6栈帧
  • 2.7对象的表示
  • 2.8浮点算法
  • 2.9特殊方法
  • 2.10异常
  • 2.11字节码指令集简介
  • 2.12类库
  • 2.13公有设计、私有实现

 

第3章 Java虚拟机编译器

  • 3.1示例的格式说明
  • 3.2常量、局部变量和控制结构的使用
  • 3.3 算术运算
  • 3.4访问运行时常量池
  • 3.5与控制结构有关的更 多示例
  • 3.6接收参数
  • 3.7方法调用
  • 3.8使用类实例
  • 3.9数组
  • 3.10编译switch语句
  • 3.11使用操作数栈
  • 3.12抛出异常和处理异常
  • 3.13编译inally语句块
  • 3.14同步
  • 3.15注解

 

第4章 class文件格式

  • 4.1 Classile结构
  • 4.2各种名称的内部表示形式
  • 4.3 描述符
  • 4.4常量池
  • 4.5 字段
  • 4.6方法
  • 4.7属性
  • 4.8格式检查
  • 4.9 Java虚拟机代码约束
  • 4.10 class文件校验
  • 4.11 Java虚拟机限制

 

第5章 加载、链接与初始化

  • 5.1运行时常量池
  • 5.2虚拟机启动
  • 5.3创建和加载
  • 5.4链接
  • 5.5初始化
  • 5.6绑定本地方法实现
  • 5.7 Java虚拟机退出

 

第6章 Java虚拟机指令集

  • 6.1设定:“必须”的含义
  • 6.2保留操作码
  • 6.3虚拟机错误
  • 6.4指令描述格式
  • 6.5指令集描述

 

第7章 操作码助记符

由于篇幅过多,不影响您的阅读,仅展示部分目录,需要获取这份资料的小伙伴私信我【资料】即可领取哦

附录A Limited License Grant