出版社:清华大学出版社
年代:2013
定价:69.0
本书共17章分别讲解了Java相关知识,平台无关性、安全性、网络移动性相关知识,Java虚拟机相关知识,Java class,栈和局部变量,分析基本语法的内理,Java内存区域与内存溢出异常,垃圾收集器,内存分配与回收策略,企业级性能监控工具和优化部署,虚拟机类加载机制,虚拟机字节码执行引擎编译优化和运行优化,Java内存模型与线程,线程安全与锁优化等相关知识。
第1章一起走进Java世界
1.1Java的优势
1.1.1排名第一的编程语言
1.1.2提供给我们美好的就业前景
1.2学习Java需要了解的那些事
1.2.1品Java语言的发展历史
1.2.2Java的特点
1.3剖析Java的运行机制
1.3.1高级语言的运行机制
1.3.2Java的运行机制
1.3.3Java虚拟机ⅧIVM
1.3.4独特的垃圾回收机制
1.4剖析Java语言体系
1.4.1Java程序员的6个级别
1.4.2分析Java体系的构成
1.5Java虚拟机家族
1.5.1虚拟机的用途
1.5.2理解Java虚拟机
1.5.3Java虚拟机的数据类型
1.5.4Java虚拟机体系结构
1.5.5探索Java虚拟机家族成员的发展史
1.6Java的最大优势——平台无关性
1.6.1平台无关性的好处
1.6.2Java对平台无关性的支持
1.6.3分析影响Java平台无关性的因素
1.6.4实现平台无关性的策略
第2章JDK编译测试
2.1为什么要编译JDK
2.2在Windows平台编译JDK
2.2.1为什么选择OpenjDK
2.2.2获取JDK源码
2.2.3系统需求
2.2.4构建编译环境
2.2.5准备依赖项
2.2.6开始编译
2.3在Linux平台编译JDK
第3章安全性的考虑
3.1为什么需要安全性
3.2沙箱模型的4种组件
3.2.1沙箱模型介绍
3.2.2类加载体系结构
3.2.3class文件检验器
3.2.4内置于Java虚拟机(及语言)的安全特性
3.2.5安全管理器和Java API
3.3浅谈安全管理器的必要性
3.3.1公正评论安全管理器优点和弱点
3.3.2方法check
3.4代码签名和认证
3.4.1代码签名和密钥
3.4.2代码签名示例
3.5策略机制和保护域
3.5.1分析Java的策略机制
3.5.2分析策略文件
3.5.3保护域
3.6访问控制器
3.6.1implies()方法
3.6.2栈检查演示实例
第4章通过网络实现移动性
4.1为什么需要网络移动性
4.2网络对软件的影响
4.2.1什么是网络
4.2.2计算机网络的发展历史
4.2.3网络应用形成了一种新的软件模式
4.3Java体系对网络的支持
4.3.1对网络安全的支持
4.3.2网络移动性
4.4applet演示
4.5JINI服务对象
4.5.1Java推出JINI的背景
4.5.2什么是JINI
4.5.3为什么需要JINI
4.5.4JINI的工作过程
4.5.5服务对象的优点
4.5.6JINI技术的运作
4.5.7如何启动JINI
第5章浅谈Java虚拟机的内部机制
5.1什么是虚拟机
5.1.1JVM简介
5.1.2JVM的组成部分
5.2Java虚拟机的生命周期
5.3Java虚拟机的体系结构
5.3.1数据类型
5.3.2“字”
5.3.3类装载器子系统
5.3.4方法区
5.3.5堆
5.3.6程序计数器
5.3.7Java栈
5.3.8栈帧
5.3.9本地方法栈
5.3.10执行引擎
5.3.11本地方法接口
5.4Java对象池技术的原理及其实现
5.4.1对象池技术的基本原理
5.4.2通用对象池的实现
5.4.3专用对象池的实现
第6童详解Class文件
6.1Class介绍
6.2Java Class文件的格式
6.3常量池的具体结构
6.4特殊字符串
6.4.1全限定名
6.4.2简单名称
6.4.3描述符
6.5常量池
6.5.1OCNSTANT_Utf8_info表
6.5.2CQNSTANT_Integerjnfo表
6.5.3CONSTANT_Float_info表
6.5.4CONSTANT_Long_info表
6.5.5CONSTANT_Double_info表
6.5.6CONSTANT_Class_info表
6.5.7CONSTANT_String_info表
6.5.8CONSTANT_Fieldref_info表
6.5.9CONSTANT_Methodref_info表
6.5.10CONSTANT_InterfaceMethodref_info表
6.5.11CONSTANT_NameAndType_info表
6.6字段
6.7方法
6.8属性
6.8.1属性格式
6.8.2Code属性
6.8.3ConstantValue属性
6.8.4Deprecated属性
6.8.5Exception属性
6.8.6InnerClasses属性
6.9JVM加载Class文件的原理
6.9.1Java中的类文件
6.9.2JVM加载Class文件
第7章栈和局部变量操作
7.1类型装载、连接和初始化
7.1.1装载
7.1.2验证
7.1.3准备
7.1.4解析
7.1.5初始化
7.2对象的生命周期
7.3卸载类型
7.3.1卸载类型基础
7.3.2unreachable状态的作用
7.3.3类型更新
7.4常量入栈操作
第8章内存异常和垃圾处理
8.1Java的内存分配管理
8.1.1内存分配中的栈和堆
8.1.2堆和栈的合作
8.2运行时的数据区域
8.2.1程序计数器(Program Counter Register)
8.2.2Java的虚拟机栈VM Stack
8.2.3本地方法栈Native Method Stack
8.2.4Java堆Java Heap
8.2.5方法区Method Area
8.2.6运行时常量池Runtime Constant Pool
8.2.7直接内存(Direct Memory)
8.3对象访问
8.3.1对象访问基础
8.3.2具体测试
8.4内存泄露
8.4.1内存泄露的分类
8.4.2内存泄露的定义
8.4.3内存泄露的常见问题和后果
8.4.4检测内存泄露
8.5垃圾收集初探
8.5.1何谓垃圾收集
8.5.2常见的垃圾收集策略
8.5.3JVM的垃圾收集策略
8.6对象的生死
8.6.1引用计数算法(Reference Couming)
8.6.2根搜索算法
8.6.3再谈引用
8.6.4生存还是死亡
8.6.5回收方法区
8.7垃圾收集算法
8.7.1标记—清除算法
8.7.2复制算法
8.7.3标记—整理算法
8.7.4分代收集算法
8.8垃圾收集器
8.8.1Serial收集器
8.8.2ParNew收集器
8.8.3Parallel Scavenge收集器
8.8.4Serial Old收集器
8.8.5Parallel Old收集器
8.8.6CMS收集器
8.8.7G1收集器
8.8.8垃圾收集器参数总结
8.9内存分配与回收策略
8.9.1对象优先在Eden分配
8.9.2大对象直接进入老年代
8.9.3长期存活的对象将进入老年代
8.9.4动态对象年龄判定
8.9.5空间分配担保
第9章高效手段之性能监控工具和优化部署
9.1JDK的命令行工具
9.1.1jps:虚拟机进程状况工具
9.1.2jstat:虚拟机统计信息监视工具
9.1.3jinfo:Java配置信息工具
9.1.4jmap:Java内存映像工具
9.1.5jhat:虚拟机堆转储快照分析工具
9.1.6jstack:Java堆栈跟踪工具
9.2JDK的可视化工具
9.2.1JConsole:Java监视与管理控制台
9.2.2VisuaIVM:多合一故障处理工具
第10章JVM参数分析和调优实战
10.1捕鱼工具选择——JVM参数
10.1.1通用的JVM参数
10.1.2串行收集器参数
10.1.3并行收集器参数
10.1.4并发收集器参数
10.2测试调优
10.2.1测试环境准备
10.2.2录制测试脚本
10.2.3定义测试场景
10.2.4执行初步性能测试
10.2.5选择调优方案
10.2.6调优后JVM监控图
10.2.7测试结果分析
10.3性能问题举例
10.3.1查看监控结果
10.3.2原因分析
10.4调优案例分析
10.4.1高性能硬件上的程序部署策略
10.4.2堆外内存导致的溢出错误
10.4.3外部命令导致系统缓慢
10.4.4服务器JVM进程崩溃
10.5Eclipse调优
10.5.1Eclipse快捷键
10.5.2启动运行速度调优
10.5.3调优前的程序运行状态
第11章虚拟机类的加载机制
11.1虚拟机类的加载
11.2类的加载过程
11.2.1加载
11.2.2验证
11.2.3准备
11.2.4解析
11.2.5初始化
11.3类加载器
11.3.1类加载器的基础知识
11.3.2JVM启动时的三个类加载器
11.3.3双亲委派模型
11.3.4破坏双亲委派模型
11.3.5开发自己的类加载器
11.3.6类加载器与Web容器
11.3.7类加载器与OSGi
第12章研究高效之魂
12.1虚拟机的字节码
12.2栈帧的结构
12.2.1什么是栈帧
12.2.2局部变量表
12.2.3操作数栈
12.2.4动态连接
12.2.5方法返回地址
12.2.6附加信息
12.3方法调用
12.3.1方法调用的背景
12.3.2解析
12.3.3分派
12.4基于栈的字节码解释执行引擎
12.4.1解释执行
12.4.2基于栈的指令集与基于寄存器的指令集
12.4.3基于栈的解释器执行过程,
第13章类加载器和执行子系统
13.1分析Tomcat类加载器的架构
13.1.1Tomcat目录结构
13.1.2定义公共类加载器
13.1.3初始化catalina守护程序
13.1.4Tomcat内部初始化类加载器
13.2OSGi的类加载器架构
13.3字节码生成技术
13.4动态代理
13.4.1代理模式
13.4.2相关的类和接口
13.4.3代理机制及其特点
13.4.4应用动态代理
……
第14章编译优化
第15章运行期优化
第16章内存模型和线程
第17章安全和优化合二为一
本书细致分析了Java虚拟机开发的基本知识,为读者权衡出优化、高效和安全的最优方案。本书内容新颖、知识全面、讲解详细,全书共17章,第1章讲解一起走进Java世界的基本知识;第2章讲解JDK编译测试的基础知识;第3章讲解安全性考虑的核心知识;第4章讲解通过网络实现移动性的知识;第5章浅谈Java虚拟机内部机制的基础知识;第6章深入分析class文件的核心知识;第7章详细讲解栈和局部变量操作的知识;第8章深入详解内存异常和垃圾处理的基本知识;第9章讲解高效手段之性能监控工具和优化部署的核心知识;第10章讲解JVM参数分析和调优实战的知识;第11章讲解虚拟机类加载机制的基本知识;第12章讲解研究高效之魂;第13章讲解类加载器和执行子系统的基本知识;第14章讲解编译优化的基本知识;第15章讲解运行期优化的基本知识;第16章讲解内存模型和线程的基本知识;第17章讲解如何将安全和优化合二为一。全书内容循序渐进,并且逐一做到了深入剖析。本书适合Java各个级别的程序员、研发人员及在职程序员,也可以作为相关培训学校和大专院校相关专业的教学用书。
本书彻底摒弃枯燥的理论和简单的操作,注重实用性和可操作性,介绍了JDK编译测试、虚拟机的内部机制、Class文件、栈和局部变量操作、内存异常、垃圾处理、性能监控工具、类加载器和执行子系统、编译优化等内容。让读者在没有编程基础的情况下,也可以掌握相关的操作技能,让读者学得更充实,更有针对性。
书籍详细信息 | |||
书名 | 解析Java虚拟机开发站内查询相似图书 | ||
9787302314943 如需购买下载《解析Java虚拟机开发》pdf扫描版电子书或查询更多相关信息,请直接复制isbn,搜索即可全网搜索该ISBN | |||
出版地 | 北京 | 出版单位 | 清华大学出版社 |
版次 | 1版 | 印次 | 1 |
定价(元) | 69.0 | 语种 | 简体中文 |
尺寸 | 26 × 19 | 装帧 | 平装 |
页数 | 印数 | 4000 |
解析Java虚拟机开发是清华大学出版社于2013.出版的中图分类号为 TP312 的主题关于 JAVA语言-程序设计 的书籍。
(美) 文纳斯 (Venners,B.) , 著
葛一鸣, 著
葛一鸣, 著
(美) 林德霍尔姆 (Lindholm,T.) , 等著
(美) 林霍尔姆 (Lindholm,T.) , (美) 耶林 (Yellin,F.) , (美) 布拉查 (Bracha,G.) , (美) 巴克利, 著
高翔龙, 编著
(美) 苏布拉马尼亚姆 (Subramaniam,V.) , 著
周志明, 著
周志明, 著