Java虚拟机规范(Java SE 7版)

Java虚拟机规范(Java SE 7版)
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: [美] , , , , , ,
2013-12
版次: 1
ISBN: 9787111445159
定价: 69.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 316页
正文语种: 简体中文
原版书名: The Java Virtual Machine Specification,Java SE 7 Edition
  •   《Java虚拟机规范(Java SE 7版)》是Java领域最重要和最权威的著作之一,由Oracle官方发布,基于Java SE 7,对最新的Java虚拟机规范进行了完整且详细的讲解,是深度了解Java虚拟机实现细节的必读之作。由国内几位资深的Java技术专家联袂翻译。
      《Java虚拟机规范(Java SE 7版)》共7章,第1章从宏观的角度介绍了Java虚拟机与Java的关系与发展历程。第2章概览了Java虚拟机整体架构,包括class文件格式、数据类型、原始类型、引用类型、运行时数据区、栈帧、浮点算法、异常等,这对理解本书后面的内容有重要帮助。第3章详述如何将Java语言编写的程序转换为Java虚拟机指令集,涉及常量、局部变量、控制结构、算术运算、参数接收、方法调用、数组、操作数栈异常处理、同步与注解等。第4章深入分析了用来表示编译后的类和接口的class文件格式,主要包括ClassFile结构、描述符与签名、常量池、字段、方法、属性、代码约束与class文件校验等。第5章定义了Java虚拟机启动以及类和接口的加载、链接和初始化过程。第6章阐释并列举了Java虚拟机指令集。第7章提供了一张以操作码值为索引的Java虚拟机操作码助记符表。
      Tim Lindholm,资深Java虚拟机高级架构师,Java编程语言的主要贡献者之一,Sun公司杰出工程师,目前主要负责移动设备上的Java应用。在到Sun公司工作之前,他已经在美国阿贡国家实验室和Quintus公司从事与虚拟机和运行时系统相关的工作。

      Frank Yellin,Sun公司高级工程师,Java项目元老级成员。最近十余年中,他都从事解释型及编译型语言的运行时系统方面的工作。在到Sun公司工作之前,他在Lucid公司从事Common Lisp编译器相关的工作。

      Gilad Bracha,Newspeak编程语言的创建者,Sun公司杰出工程师。在到Sun公司工作之前,他在Animorphic Smalltalk System公司从事Strongtalk语言相关的工作。

      Alex Buckley,Oracle公司Java编程语言和Java虚拟机规范负责人。 译者序
    前言
    第2版前言
    第1版前言

    第1章 引言
    1.1 简史
    1.2 Java虚拟机
    1.3 各章节摘要
    1.4 说明

    第2章 Java虚拟机结构
    2.1 class文件格式
    2.2 数据类型
    2.3 原始类型与值
    2.3.1 整数类型与整型值
    2.3.2 浮点类型、取值集合及浮点值
    2.3.3 returnAddress类型和值
    2.3.4 boolean类型
    2.4 引用类型与值
    2.5 运行时数据区
    2.5.1 pc寄存器
    2.5.2 Java虚拟机栈
    2.5.3 Java堆
    2.5.4 方法区
    2.5.5 运行时常量池
    2.5.6 本地方法栈
    2.6 栈帧
    2.6.1 局部变量表
    2.6.2 操作数栈
    2.6.3 动态链接
    2.6.4 方法正常调用完成
    2.6.5 方法异常调用完成
    2.7 对象的表示
    2.8 浮点算法
    2.8.1 Java虚拟机和IEEE 754中的浮点算法
    2.8.2 浮点模式
    2.8.3 数值集合转换
    2.9 特殊方法
    2.10 异常
    2.11 字节码指令集简介
    2.11.1 数据类型与Java虚拟机
    2.11.2 加载和存储指令
    2.11.3 算术指令
    2.11.4 类型转换指令
    2.11.5 对象创建与操作
    2.11.6 操作数栈管理指令
    2.11.7 控制转移指令
    2.11.8 方法调用和返回指令
    2.11.9 抛出异常
    2.11.10 同步
    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 编译finally语句块
    3.14 同步
    3.15 注解

    第4章 class文件格式
    4.1 ClassFile结构
    4.2 各种内部表示名称
    4.2.1 类和接口的二进制名称
    4.2.2 非全限定名
    4.3 描述符和签名
    4.3.1 语法符号
    4.3.2 字段描述符
    4.3.3 方法描述符
    4.3.4 签名
    4.4 常量池
    4.4.1 CONSTANT_Class_info结构
    4.4.2 CONSTANT_Fieldref_info、CONSTANT_Methodref_info和CONSTANT_Interface Methodref_info结构
    4.4.3 CONSTANT_String_info结构
    4.4.4 CONSTANT_Integer_info和CONSTANT_Float_info结构
    4.4.5 CONSTANT_Long_info和CONSTANT_Double_info结构
    4.4.6 CONSTANT_NameAndType_info结构
    4.4.7 CONSTANT_Utf8_info结构
    4.4.8 CONSTANT_MethodHandle_info结构
    4.4.9 CONSTANT_MethodType_info结构
    4.4.10 CONSTANT_InvokeDynamic_info结构
    4.5 字段
    4.6 方法
    4.7 属性
    4.7.1 自定义和命名新的属性
    4.7.2 ConstantValue属性
    4.7.3 Code属性
    4.7.4 StackMapTable属性
    4.7.5 Exceptions属性
    4.7.6 InnerClasses属性
    4.7.7 EnclosingMethod属性
    4.7.8 Synthetic属性
    4.7.9 Signature属性
    4.7.10 SourceFile属性
    4.7.11 SourceDebugExtension属性
    4.7.12 LineNumberTable属性
    4.7.13 LocalVariableTable属性
    4.7.14 LocalVariableTypeTable属性
    4.7.15 Deprecated属性
    4.7.16 RuntimeVisibleAnnotations属性
    4.7.17 RuntimeInvisible Annotations属性
    4.7.18 RuntimeVisibleParameter Annotations属性
    4.7.19 RuntimeInvisibleParameter Annotations属性
    4.7.20 AnnotationDefault属性
    4.7.21 BootstrapMethods属性
    4.8 格式检查
    4.9 Java虚拟机代码约束
    4.9.1 静态约束
    4.9.2 结构化约束
    4.10 class文件校验
    4.10.1 类型检查验证
    4.10.2 类型推导验证
    4.11 Java虚拟机限制

    第5章 加载、链接与初始化
    5.1 运行时常量池
    5.2 虚拟机启动
    5.3 创建和加载
    5.3.1 使用引导类加载器来加载类型
    5.3.2 使用用户自定义类加载器来加载类型
    5.3.3 创建数组类
    5.3.4 加载限制
    5.3.5 从class文件表示得到类
    5.4 链接
    5.4.1 验证
    5.4.2 准备
    5.4.3 解析
    5.4.4 访问控制
    5.4.5 方法覆盖
    5.5 初始化
    5.6 绑定本地方法实现
    5.7 Java虚拟机退出

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

    第7章 操作码助记符
    附录A Limited License Grant
  • 内容简介:
      《Java虚拟机规范(Java SE 7版)》是Java领域最重要和最权威的著作之一,由Oracle官方发布,基于Java SE 7,对最新的Java虚拟机规范进行了完整且详细的讲解,是深度了解Java虚拟机实现细节的必读之作。由国内几位资深的Java技术专家联袂翻译。
      《Java虚拟机规范(Java SE 7版)》共7章,第1章从宏观的角度介绍了Java虚拟机与Java的关系与发展历程。第2章概览了Java虚拟机整体架构,包括class文件格式、数据类型、原始类型、引用类型、运行时数据区、栈帧、浮点算法、异常等,这对理解本书后面的内容有重要帮助。第3章详述如何将Java语言编写的程序转换为Java虚拟机指令集,涉及常量、局部变量、控制结构、算术运算、参数接收、方法调用、数组、操作数栈异常处理、同步与注解等。第4章深入分析了用来表示编译后的类和接口的class文件格式,主要包括ClassFile结构、描述符与签名、常量池、字段、方法、属性、代码约束与class文件校验等。第5章定义了Java虚拟机启动以及类和接口的加载、链接和初始化过程。第6章阐释并列举了Java虚拟机指令集。第7章提供了一张以操作码值为索引的Java虚拟机操作码助记符表。
  • 作者简介:
      Tim Lindholm,资深Java虚拟机高级架构师,Java编程语言的主要贡献者之一,Sun公司杰出工程师,目前主要负责移动设备上的Java应用。在到Sun公司工作之前,他已经在美国阿贡国家实验室和Quintus公司从事与虚拟机和运行时系统相关的工作。

      Frank Yellin,Sun公司高级工程师,Java项目元老级成员。最近十余年中,他都从事解释型及编译型语言的运行时系统方面的工作。在到Sun公司工作之前,他在Lucid公司从事Common Lisp编译器相关的工作。

      Gilad Bracha,Newspeak编程语言的创建者,Sun公司杰出工程师。在到Sun公司工作之前,他在Animorphic Smalltalk System公司从事Strongtalk语言相关的工作。

      Alex Buckley,Oracle公司Java编程语言和Java虚拟机规范负责人。
  • 目录:
    译者序
    前言
    第2版前言
    第1版前言

    第1章 引言
    1.1 简史
    1.2 Java虚拟机
    1.3 各章节摘要
    1.4 说明

    第2章 Java虚拟机结构
    2.1 class文件格式
    2.2 数据类型
    2.3 原始类型与值
    2.3.1 整数类型与整型值
    2.3.2 浮点类型、取值集合及浮点值
    2.3.3 returnAddress类型和值
    2.3.4 boolean类型
    2.4 引用类型与值
    2.5 运行时数据区
    2.5.1 pc寄存器
    2.5.2 Java虚拟机栈
    2.5.3 Java堆
    2.5.4 方法区
    2.5.5 运行时常量池
    2.5.6 本地方法栈
    2.6 栈帧
    2.6.1 局部变量表
    2.6.2 操作数栈
    2.6.3 动态链接
    2.6.4 方法正常调用完成
    2.6.5 方法异常调用完成
    2.7 对象的表示
    2.8 浮点算法
    2.8.1 Java虚拟机和IEEE 754中的浮点算法
    2.8.2 浮点模式
    2.8.3 数值集合转换
    2.9 特殊方法
    2.10 异常
    2.11 字节码指令集简介
    2.11.1 数据类型与Java虚拟机
    2.11.2 加载和存储指令
    2.11.3 算术指令
    2.11.4 类型转换指令
    2.11.5 对象创建与操作
    2.11.6 操作数栈管理指令
    2.11.7 控制转移指令
    2.11.8 方法调用和返回指令
    2.11.9 抛出异常
    2.11.10 同步
    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 编译finally语句块
    3.14 同步
    3.15 注解

    第4章 class文件格式
    4.1 ClassFile结构
    4.2 各种内部表示名称
    4.2.1 类和接口的二进制名称
    4.2.2 非全限定名
    4.3 描述符和签名
    4.3.1 语法符号
    4.3.2 字段描述符
    4.3.3 方法描述符
    4.3.4 签名
    4.4 常量池
    4.4.1 CONSTANT_Class_info结构
    4.4.2 CONSTANT_Fieldref_info、CONSTANT_Methodref_info和CONSTANT_Interface Methodref_info结构
    4.4.3 CONSTANT_String_info结构
    4.4.4 CONSTANT_Integer_info和CONSTANT_Float_info结构
    4.4.5 CONSTANT_Long_info和CONSTANT_Double_info结构
    4.4.6 CONSTANT_NameAndType_info结构
    4.4.7 CONSTANT_Utf8_info结构
    4.4.8 CONSTANT_MethodHandle_info结构
    4.4.9 CONSTANT_MethodType_info结构
    4.4.10 CONSTANT_InvokeDynamic_info结构
    4.5 字段
    4.6 方法
    4.7 属性
    4.7.1 自定义和命名新的属性
    4.7.2 ConstantValue属性
    4.7.3 Code属性
    4.7.4 StackMapTable属性
    4.7.5 Exceptions属性
    4.7.6 InnerClasses属性
    4.7.7 EnclosingMethod属性
    4.7.8 Synthetic属性
    4.7.9 Signature属性
    4.7.10 SourceFile属性
    4.7.11 SourceDebugExtension属性
    4.7.12 LineNumberTable属性
    4.7.13 LocalVariableTable属性
    4.7.14 LocalVariableTypeTable属性
    4.7.15 Deprecated属性
    4.7.16 RuntimeVisibleAnnotations属性
    4.7.17 RuntimeInvisible Annotations属性
    4.7.18 RuntimeVisibleParameter Annotations属性
    4.7.19 RuntimeInvisibleParameter Annotations属性
    4.7.20 AnnotationDefault属性
    4.7.21 BootstrapMethods属性
    4.8 格式检查
    4.9 Java虚拟机代码约束
    4.9.1 静态约束
    4.9.2 结构化约束
    4.10 class文件校验
    4.10.1 类型检查验证
    4.10.2 类型推导验证
    4.11 Java虚拟机限制

    第5章 加载、链接与初始化
    5.1 运行时常量池
    5.2 虚拟机启动
    5.3 创建和加载
    5.3.1 使用引导类加载器来加载类型
    5.3.2 使用用户自定义类加载器来加载类型
    5.3.3 创建数组类
    5.3.4 加载限制
    5.3.5 从class文件表示得到类
    5.4 链接
    5.4.1 验证
    5.4.2 准备
    5.4.3 解析
    5.4.4 访问控制
    5.4.5 方法覆盖
    5.5 初始化
    5.6 绑定本地方法实现
    5.7 Java虚拟机退出

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

    第7章 操作码助记符
    附录A Limited License Grant
查看详情
12
您可能感兴趣 / 更多
Java虚拟机规范(Java SE 7版)
Java研发自测入门与进阶
林宁、魏兆玉
Java虚拟机规范(Java SE 7版)
Java语言程序设计(2023年版)全国高等教育自学考试指导委员会
全国高等教育自学考试指导委员会
Java虚拟机规范(Java SE 7版)
Java项目开发实战(微视频版)
陈强
Java虚拟机规范(Java SE 7版)
Java+OpenCV案例佳作选
姚利民
Java虚拟机规范(Java SE 7版)
Java核心编程技术(第4版微课版新世纪应用型高等教育软件专业系列规划教材)
张屹、蔡木生 编
Java虚拟机规范(Java SE 7版)
Java Web及其框架技术
陈振兴
Java虚拟机规范(Java SE 7版)
Japanese Ink Painting: The Art of Sumi-E
Okamoto;Naomi
Java虚拟机规范(Java SE 7版)
JavaScript多线程编程实践
(美)托马斯 亨特二世(Thomas Hunter II),(加拿大)布莱恩 英格利什(Bryan English)
Java虚拟机规范(Java SE 7版)
Java开发坑点解析:从根因分析到最佳实践
朱晔
Java虚拟机规范(Java SE 7版)
Java面向对象程序设计(题库·微课视频版)
梁胜彬 主编 渠慎明 白晨希 马华蔚 甘志华 程素营 副主编
Java虚拟机规范(Java SE 7版)
Java核心技术速学版(第3版)
(美)凯·S.霍斯特曼(Cay S. Horstmann)
Java虚拟机规范(Java SE 7版)
Java到Kotlin:代码重构指南
(英)邓肯·麦格雷戈(Duncan McGregor)
系列丛书 / 更多
Java虚拟机规范(Java SE 7版)
Java研发自测入门与进阶
林宁、魏兆玉
Java虚拟机规范(Java SE 7版)
Java语言程序设计(2023年版)全国高等教育自学考试指导委员会
全国高等教育自学考试指导委员会
Java虚拟机规范(Java SE 7版)
Java项目开发实战(微视频版)
陈强
Java虚拟机规范(Java SE 7版)
Java+OpenCV案例佳作选
姚利民
Java虚拟机规范(Java SE 7版)
Java核心编程技术(第4版微课版新世纪应用型高等教育软件专业系列规划教材)
张屹、蔡木生 编
Java虚拟机规范(Java SE 7版)
Java Web及其框架技术
陈振兴
Java虚拟机规范(Java SE 7版)
Japanese Ink Painting: The Art of Sumi-E
Okamoto;Naomi
Java虚拟机规范(Java SE 7版)
JavaScript多线程编程实践
(美)托马斯 亨特二世(Thomas Hunter II),(加拿大)布莱恩 英格利什(Bryan English)
Java虚拟机规范(Java SE 7版)
Java开发坑点解析:从根因分析到最佳实践
朱晔
Java虚拟机规范(Java SE 7版)
Java面向对象程序设计(题库·微课视频版)
梁胜彬 主编 渠慎明 白晨希 马华蔚 甘志华 程素营 副主编
Java虚拟机规范(Java SE 7版)
Java核心技术速学版(第3版)
(美)凯·S.霍斯特曼(Cay S. Horstmann)
Java虚拟机规范(Java SE 7版)
Java到Kotlin:代码重构指南
(英)邓肯·麦格雷戈(Duncan McGregor)
相关图书 / 更多
Java虚拟机规范(Java SE 7版)
Java研发自测入门与进阶
林宁、魏兆玉
Java虚拟机规范(Java SE 7版)
Java语言程序设计(2023年版)全国高等教育自学考试指导委员会
全国高等教育自学考试指导委员会
Java虚拟机规范(Java SE 7版)
Java项目开发实战(微视频版)
陈强
Java虚拟机规范(Java SE 7版)
Java+OpenCV案例佳作选
姚利民
Java虚拟机规范(Java SE 7版)
Java核心编程技术(第4版微课版新世纪应用型高等教育软件专业系列规划教材)
张屹、蔡木生 编
Java虚拟机规范(Java SE 7版)
Java Web及其框架技术
陈振兴
Java虚拟机规范(Java SE 7版)
Japanese Ink Painting: The Art of Sumi-E
Okamoto;Naomi
Java虚拟机规范(Java SE 7版)
JavaScript多线程编程实践
(美)托马斯 亨特二世(Thomas Hunter II),(加拿大)布莱恩 英格利什(Bryan English)
Java虚拟机规范(Java SE 7版)
Java开发坑点解析:从根因分析到最佳实践
朱晔
Java虚拟机规范(Java SE 7版)
Java面向对象程序设计(题库·微课视频版)
梁胜彬 主编 渠慎明 白晨希 马华蔚 甘志华 程素营 副主编
Java虚拟机规范(Java SE 7版)
Java核心技术速学版(第3版)
(美)凯·S.霍斯特曼(Cay S. Horstmann)
Java虚拟机规范(Java SE 7版)
Java到Kotlin:代码重构指南
(英)邓肯·麦格雷戈(Duncan McGregor)