
深入理解Java7
《深入理解Java 7:核心技术与最佳实践》由资深Java软体工程师,有多年Java企业级套用开发经验,对Java 7和Java平台的各项技术的底层原理有深入透彻的研究的成富编写而成。
基本介绍
- 作者:成富
- ISBN:9787111380399
- 页数:450
- 定价:79.00元
- 出版时间:2012-5
- 装帧:平装
- 副标题:核心技术与最佳实践
主要内容
第一部分是1-6章,全面阐释Java 7在语法、JVM、类库和API等方面的所有重要新功能和新特性,掌握这部分内容有助于大幅度提升编码效率和提高代码质量;
第二部分是7-13章,对JVM、Java原始码和位元组代码操作、类载入器、对象生命周期、多执行绪、并发编程、泛型、安全等Java平台的核心技术进行了深入解析,掌握这部分内容有助于深入理解Java的底层原理;
第三部分为第14章,是对Java8的展望,简要介绍了Java 8中将要增加的新特性。
作者简介
成富,资深Java软体工程师,有多年Java企业级套用开发经验,对Java 7和Java平台的各项技术的底层原理有深入透彻的研究。曾就职于IBM中国研发中心,先后在IBM新技术学院和Lotus部门参与了多个重要产品的开发工作,现就职于纽西兰PropellerHead公司。他是非常受欢迎的技术作家,在IBM developerWorks上发表中英文技术文章近30篇,获得了其颁发的“极具人气作者奖”;他还是知名技术网站InfoQ的专栏作家,撰写了“Java深度历险”专栏,共发表技术文章10余篇。此外,他还非常精通HTML 5、CSS 3、JavaScript等Web 2.0核心技术,实战经验丰富。
作品目录
前言
Java的挑战与展望
第1章 Java 7语法新特性
1.1 Coin项目介绍
1.2 在switch语句中使用字元串
1.2.1 基本用法
1.2.2 实现原理
1.2.3 枚举类型
1.3 数值字面量的改进
1.3.1 二进制整数字面量
1.3.2 在数值字面量中使用下划线
1.4 最佳化的异常处理
1.4.1 异常的基础知识
1.4.2 创建自己的异常
1.4.3 处理异常
1.4.4 Java 7的异常处理新特性
1.5 try-with-resources语句
1.6 最佳化变长参数的方法调用
1.7 小结
第2章 Java语言的动态性
2.1 脚本语言支持API
2.1.1 脚本引擎
2.1.2 语言绑定
2.1.3 脚本执行上下文
2.1.4 脚本的编译
2.1.5 方法调用
2.1.6 使用案例
2.2 反射API
2.2.1 获取构造方法
2.2.2 获取域
2.2.3 获取方法
2.2.4 运算元组
2.2.5 访问许可权与异常处理
2.3 动态代理
2.3.1 基本使用方式
2.3.2 使用案例
2.4 动态语言支持
2.4.1 Java语言与Java虚拟机
2.4.2 方法句柄
2.4.3 invokedynamic指令
2.5 小结
第3章 Java IO
3.1 流
3.1.1 基本输入流
3.1.2 基本输出流
3.1.3 输入流的复用
3.1.4 过滤输入输出流
3.1.5 其他输入输出流
3.1.6 字元流
3.2 缓冲区
3.2.1 基本用法
3.2.2 位元组缓冲区
3.2.3 缓冲区视图
3.3 通道
3.3.1 档案通道
3.3.2 套接字通道
3.4 NIO.2
3.4.1 档案系统访问
3.4.2 zipjar档案系统
3.4.3 异步IO通道
3.4.4 套接字通道绑定与配置
3.4.5 IP组播通道
3.5 使用案例
3.6 小结
第4章 国际化与本地化
4.1 国际化概述
4.2 Unicode
4.2.1 Unicode编码格式
4.2.2 其他字元集
4.2.3 Java与Unicode
4.3 Java中的编码实践
4.3.1 Java NIO中的编码器和解码器
4.3.2 乱码问题详解
4.4 区域设定
4.4.1 IETF BCP 47
4.4.2 资源包
4.4.3 日期和时间
4.4.4 数字和货币
4.4.5 讯息文本
4.4.6 默认区域设定的类别
4.4.7 字元串比较
4.5 国际化与本地化基本实践
4.6 小结
第5章 图形用户界面
5.1 Java图形用户界面概述
5.2 AWT
5.2.1 重要组件类
5.2.2 任意形状的视窗
5.2.3 半透明视窗
5.2.4 组件混合
5.3 Swing
5.3.1 重要组件类
5.3.2 JLayer组件和LayerUI类
5.4 事件处理与执行绪安全性
5.4.1 事件处理
5.4.2 事件分发执行绪
5.4.3 SwingWorker类
5.4.4 SecondaryLoop接口
5.5 界面绘製
5.5.1 AWT中的界面绘製
5.5.2 Swing中的绘製
5.6 可插拔式外观样式
5.7 JavaFX
5.7.1 场景图
5.7.2 变换
5.7.3 动画效果
5.7.4 FXML
5.7.5 CSS外观描述
5.7.6 Web引擎与网页显示
5.8 使用案例
5.9 小结
第6章 Java 7其他重要更新
6.1 关係资料库访问
6.1.1 使用try-with-resources语句
6.1.2 资料库查询的默认模式
6.1.3 资料库连线逾时时间与终止
6.1.4 语句自动关闭
6.1.5 RowSet实现提供者
6.2 java.lang包的更新
6.2.1 基本类型的包装类
6.2.2 进程使用
6.2.3 Thread类的更新
6.3 Java实用工具类
6.3.1 对象操作
6.3.2 正则表达式
6.3.3 压缩档案处理
6.4 JavaBeans组件
6.4.1 获取组件信息
6.4.2 执行语句和表达式
6.4.3 持久化
6.5 小结
第7章 Java虚拟机
7.1 虚拟机基本概念
7.2 记忆体管理
7.3 引用类型
7.3.1 强引用
7.3.2 引用类型基本概念
7.3.3 软引用
7.3.4 弱引用
7.3.5 幽灵引用
7.3.6 引用伫列
7.4 Java本地接口
7.4.1 JNI基本用法
7.4.2 Java程式中集成CC++代码
7.4.3 在CC++程式中启动Java虚拟机
7.5 HotSpot虚拟机
7.5.1 位元组代码执行
7.5.2 垃圾回收
7.5.3 启动参数
7.5.4 分析工具
7.5.5 Java虚拟机工具接口
7.6 小结
第8章 Java原始码和位元组代码操作
8.1 Java位元组代码格式
8.1.1 基本格式
8.1.2 常量池的结构
8.1.3 属性
8.2 动态编译Java原始码
8.2.1 使用javac工具
8.2.2 Java编译器API
8.2.3 使用Eclipse JDT编译器
8.3 位元组代码增强
8.3.1 使用ASM
8.3.2 增强代理
8.4 注解
8.4.1 注解类型
8.4.2 创建注解类型
8.4.3 使用注解类型
8.4.4 处理注解
8.5 使用案例
8.6 小结
第9章 Java类载入器
9.1 类载入器概述
9.2 类载入器的层次结构与代理模式
9.3 创建类载入器
9.4 类载入器的隔离作用
9.5 执行绪上下文类载入器
9.6 Class.forName方法
9.7 载入资源
9.8 Web套用中的类载入器
9.9 OSGi中的类载入器
9.9.1 OSGi基本的类载入器机制
9.9.2 Equinox框架的类载入实现机制
9.9.3 Equinox框架嵌入到Web容器中
9.10 小结
第10章 对象生命周期
10.1 Java类的连结
10.2 Java类的初始化
10.3 对象的创建与初始化
10.4 对象终止
10.5 对象複製
10.6 对象序列化
10.6.1 默认的对象序列化
10.6.2 自定义对象序列化
10.6.3 对象替换
10.6.4 版本更新
10.6.5 安全性
10.6.6 使用Externalizable接口
10.7 小结
第11章 多执行绪与并发编程实践
11.1 多执行绪
11.1.1 可见性
11.1.2 Java记忆体模型
11.1.3 volatile关键字
11.1.4 final关键字
11.1.5 原子操作
11.2 基本执行绪同步方式
11.2.1 synchronized关键字
11.2.2 Object类的wait、notify和notifyAll方法
11.3 使用Thread类
11.3.1 执行绪状态
11.3.2 执行绪中断
11.3.3 执行绪等待、睡眠和让步
11.4 非阻塞方式
11.5 高级实用工具
11.5.1 高级同步机制
11.5.2 底层同步器
11.5.3 高级同步对象
11.5.4 数据结构
11.5.5 任务执行
11.6 Java SE 7新特性
11.6.1 轻量级任务执行框架forkjoin
11.6.2 多阶段执行绪同步工具
11.7 ThreadLocal类
11.8 小结
第12章 Java泛型
12.1 泛型基本概念
12.2 类型擦除
12.3 上界和下界
12.4 通配符
12.5 泛型与数组
12.6 类型系统
12.7 覆写与重载
12.7.1 覆写对方法类型签名的要求
12.7.2 覆写对返回值类型的要求
12.7.3 覆写对异常声明的要求
12.7.4 重载
12.8 类型推断和<>操作符
12.9 泛型与反射API
12.10 使用案例
12.11 小结
第13章 Java安全
13.1 Java安全概述
13.2 用户认证
13.2.1 主体、身份标识与凭证
13.2.2 登录
13.3 许可权控制
13.3.1 许可权、策略与保护域
13.3.2 访问控制许可权
13.3.3 特权动作
13.3.4 访问控制上下文
13.3.5 守卫对象
113.4 加密与解密、报文摘要和数字签名
13.4.1 Java密码框架
13.4.2 加密与解密
13.4.3 报文摘要
13.4.4 数字签名
13.5 安全套接字连线
13.5.1 SSL协定
13.5.2 HTTPS
13.6 使用案例
13.7 小结
第14章 超越Java 7
14.1 lambda表达式
14.1.1 函式式接口
14.1.2 lambda表达式的语法
14.1.3 目标类型
14.1.4 词法作用域
14.1.5 方法引用
14.1.6 接口的默认方法
14.2 Java平台模组化
14.3 Java SE 8的其他更新
14.4 小结
附录A OpenJDK
附录B Java简史 4483.4 加密与解密、报文摘要和数字签名
13.4.1 Java密码框架
13.4.2 加密与解密
13.4.3 报文摘要
13.4.4 数字签名
13.5 安全套接字连线
13.5.1 SSL协定
13.5.2 HTTPS
13.6 使用案例
13.7 小结
第14章 超越Java 7
14.1 lambda表达式
14.1.1 函式式接口
14.1.2 lambda表达式的语法
14.1.3 目标类型
14.1.4 词法作用域
14.1.5 方法引用
14.1.6 接口的默认方法
14.2 Java平台模组化
14.3 Java SE 8的其他更新
14.4 小结
附录A OpenJDK
附录B Java简史
Java的挑战与展望
第1章 Java 7语法新特性
1.1 Coin项目介绍
1.2 在switch语句中使用字元串
1.2.1 基本用法
1.2.2 实现原理
1.2.3 枚举类型
1.3 数值字面量的改进
1.3.1 二进制整数字面量
1.3.2 在数值字面量中使用下划线
1.4 最佳化的异常处理
1.4.1 异常的基础知识
1.4.2 创建自己的异常
1.4.3 处理异常
1.4.4 Java 7的异常处理新特性
1.5 try-with-resources语句
1.6 最佳化变长参数的方法调用
1.7 小结
第2章 Java语言的动态性
2.1 脚本语言支持API
2.1.1 脚本引擎
2.1.2 语言绑定
2.1.3 脚本执行上下文
2.1.4 脚本的编译
2.1.5 方法调用
2.1.6 使用案例
2.2 反射API
2.2.1 获取构造方法
2.2.2 获取域
2.2.3 获取方法
2.2.4 运算元组
2.2.5 访问许可权与异常处理
2.3 动态代理
2.3.1 基本使用方式
2.3.2 使用案例
2.4 动态语言支持
2.4.1 Java语言与Java虚拟机
2.4.2 方法句柄
2.4.3 invokedynamic指令
2.5 小结
第3章 Java IO
3.1 流
3.1.1 基本输入流
3.1.2 基本输出流
3.1.3 输入流的复用
3.1.4 过滤输入输出流
3.1.5 其他输入输出流
3.1.6 字元流
3.2 缓冲区
3.2.1 基本用法
3.2.2 位元组缓冲区
3.2.3 缓冲区视图
3.3 通道
3.3.1 档案通道
3.3.2 套接字通道
3.4 NIO.2
3.4.1 档案系统访问
3.4.2 zipjar档案系统
3.4.3 异步IO通道
3.4.4 套接字通道绑定与配置
3.4.5 IP组播通道
3.5 使用案例
3.6 小结
第4章 国际化与本地化
4.1 国际化概述
4.2 Unicode
4.2.1 Unicode编码格式
4.2.2 其他字元集
4.2.3 Java与Unicode
4.3 Java中的编码实践
4.3.1 Java NIO中的编码器和解码器
4.3.2 乱码问题详解
4.4 区域设定
4.4.1 IETF BCP 47
4.4.2 资源包
4.4.3 日期和时间
4.4.4 数字和货币
4.4.5 讯息文本
4.4.6 默认区域设定的类别
4.4.7 字元串比较
4.5 国际化与本地化基本实践
4.6 小结
第5章 图形用户界面
5.1 Java图形用户界面概述
5.2 AWT
5.2.1 重要组件类
5.2.2 任意形状的视窗
5.2.3 半透明视窗
5.2.4 组件混合
5.3 Swing
5.3.1 重要组件类
5.3.2 JLayer组件和LayerUI类
5.4 事件处理与执行绪安全性
5.4.1 事件处理
5.4.2 事件分发执行绪
5.4.3 SwingWorker类
5.4.4 SecondaryLoop接口
5.5 界面绘製
5.5.1 AWT中的界面绘製
5.5.2 Swing中的绘製
5.6 可插拔式外观样式
5.7 JavaFX
5.7.1 场景图
5.7.2 变换
5.7.3 动画效果
5.7.4 FXML
5.7.5 CSS外观描述
5.7.6 Web引擎与网页显示
5.8 使用案例
5.9 小结
第6章 Java 7其他重要更新
6.1 关係资料库访问
6.1.1 使用try-with-resources语句
6.1.2 资料库查询的默认模式
6.1.3 资料库连线逾时时间与终止
6.1.4 语句自动关闭
6.1.5 RowSet实现提供者
6.2 java.lang包的更新
6.2.1 基本类型的包装类
6.2.2 进程使用
6.2.3 Thread类的更新
6.3 Java实用工具类
6.3.1 对象操作
6.3.2 正则表达式
6.3.3 压缩档案处理
6.4 JavaBeans组件
6.4.1 获取组件信息
6.4.2 执行语句和表达式
6.4.3 持久化
6.5 小结
第7章 Java虚拟机
7.1 虚拟机基本概念
7.2 记忆体管理
7.3 引用类型
7.3.1 强引用
7.3.2 引用类型基本概念
7.3.3 软引用
7.3.4 弱引用
7.3.5 幽灵引用
7.3.6 引用伫列
7.4 Java本地接口
7.4.1 JNI基本用法
7.4.2 Java程式中集成CC++代码
7.4.3 在CC++程式中启动Java虚拟机
7.5 HotSpot虚拟机
7.5.1 位元组代码执行
7.5.2 垃圾回收
7.5.3 启动参数
7.5.4 分析工具
7.5.5 Java虚拟机工具接口
7.6 小结
第8章 Java原始码和位元组代码操作
8.1 Java位元组代码格式
8.1.1 基本格式
8.1.2 常量池的结构
8.1.3 属性
8.2 动态编译Java原始码
8.2.1 使用javac工具
8.2.2 Java编译器API
8.2.3 使用Eclipse JDT编译器
8.3 位元组代码增强
8.3.1 使用ASM
8.3.2 增强代理
8.4 注解
8.4.1 注解类型
8.4.2 创建注解类型
8.4.3 使用注解类型
8.4.4 处理注解
8.5 使用案例
8.6 小结
第9章 Java类载入器
9.1 类载入器概述
9.2 类载入器的层次结构与代理模式
9.3 创建类载入器
9.4 类载入器的隔离作用
9.5 执行绪上下文类载入器
9.6 Class.forName方法
9.7 载入资源
9.8 Web套用中的类载入器
9.9 OSGi中的类载入器
9.9.1 OSGi基本的类载入器机制
9.9.2 Equinox框架的类载入实现机制
9.9.3 Equinox框架嵌入到Web容器中
9.10 小结
第10章 对象生命周期
10.1 Java类的连结
10.2 Java类的初始化
10.3 对象的创建与初始化
10.4 对象终止
10.5 对象複製
10.6 对象序列化
10.6.1 默认的对象序列化
10.6.2 自定义对象序列化
10.6.3 对象替换
10.6.4 版本更新
10.6.5 安全性
10.6.6 使用Externalizable接口
10.7 小结
第11章 多执行绪与并发编程实践
11.1 多执行绪
11.1.1 可见性
11.1.2 Java记忆体模型
11.1.3 volatile关键字
11.1.4 final关键字
11.1.5 原子操作
11.2 基本执行绪同步方式
11.2.1 synchronized关键字
11.2.2 Object类的wait、notify和notifyAll方法
11.3 使用Thread类
11.3.1 执行绪状态
11.3.2 执行绪中断
11.3.3 执行绪等待、睡眠和让步
11.4 非阻塞方式
11.5 高级实用工具
11.5.1 高级同步机制
11.5.2 底层同步器
11.5.3 高级同步对象
11.5.4 数据结构
11.5.5 任务执行
11.6 Java SE 7新特性
11.6.1 轻量级任务执行框架forkjoin
11.6.2 多阶段执行绪同步工具
11.7 ThreadLocal类
11.8 小结
第12章 Java泛型
12.1 泛型基本概念
12.2 类型擦除
12.3 上界和下界
12.4 通配符
12.5 泛型与数组
12.6 类型系统
12.7 覆写与重载
12.7.1 覆写对方法类型签名的要求
12.7.2 覆写对返回值类型的要求
12.7.3 覆写对异常声明的要求
12.7.4 重载
12.8 类型推断和<>操作符
12.9 泛型与反射API
12.10 使用案例
12.11 小结
第13章 Java安全
13.1 Java安全概述
13.2 用户认证
13.2.1 主体、身份标识与凭证
13.2.2 登录
13.3 许可权控制
13.3.1 许可权、策略与保护域
13.3.2 访问控制许可权
13.3.3 特权动作
13.3.4 访问控制上下文
13.3.5 守卫对象
113.4 加密与解密、报文摘要和数字签名
13.4.1 Java密码框架
13.4.2 加密与解密
13.4.3 报文摘要
13.4.4 数字签名
13.5 安全套接字连线
13.5.1 SSL协定
13.5.2 HTTPS
13.6 使用案例
13.7 小结
第14章 超越Java 7
14.1 lambda表达式
14.1.1 函式式接口
14.1.2 lambda表达式的语法
14.1.3 目标类型
14.1.4 词法作用域
14.1.5 方法引用
14.1.6 接口的默认方法
14.2 Java平台模组化
14.3 Java SE 8的其他更新
14.4 小结
附录A OpenJDK
附录B Java简史 4483.4 加密与解密、报文摘要和数字签名
13.4.1 Java密码框架
13.4.2 加密与解密
13.4.3 报文摘要
13.4.4 数字签名
13.5 安全套接字连线
13.5.1 SSL协定
13.5.2 HTTPS
13.6 使用案例
13.7 小结
第14章 超越Java 7
14.1 lambda表达式
14.1.1 函式式接口
14.1.2 lambda表达式的语法
14.1.3 目标类型
14.1.4 词法作用域
14.1.5 方法引用
14.1.6 接口的默认方法
14.2 Java平台模组化
14.3 Java SE 8的其他更新
14.4 小结
附录A OpenJDK
附录B Java简史