# Summary

* [Introduction](README.md)
* [译者的话](docs/README.md)
* [封面](docs/book/00-On-Java-8.md)
* [前言](docs/book/00-Preface.md)
    * [教学目标](docs/book/00-Preface.md#教学目标)
    * [语言设计错误](docs/book/00-Preface.md#语言设计错误)
    * [测试用例](docs/book/00-Preface.md#测试用例)
    * [普及性](docs/book/00-Preface.md#普及性)
    * [关于安卓](docs/book/00-Preface.md#关于安卓)
    * [电子版权声明](docs/book/00-Preface.md#电子版权声明)
    * [版本说明](docs/book/00-Preface.md#版本说明)
    * [封面设计](docs/book/00-Preface.md#封面设计)
    * [感谢的人](docs/book/00-Preface.md#感谢的人)
    * [献礼](docs/book/00-Preface.md#献礼)
* [简介](docs/book/00-Introduction.md)
    * [前提条件](docs/book/00-Introduction.md#前提条件)
    * [JDK文档](docs/book/00-Introduction.md#JDK文档)
    * [C编程思想](docs/book/00-Introduction.md#C编程思想)
    * [源码下载](docs/book/00-Introduction.md#源码下载)
    * [编码样式](docs/book/00-Introduction.md#编码样式)
    * [BUG提交](docs/book/00-Introduction.md#BUG提交)
    * [邮箱订阅](docs/book/00-Introduction.md#邮箱订阅)
    * [Java图形界面](docs/book/00-Introduction.md#Java图形界面)

* [第一章 对象的概念](docs/book/01-What-is-an-Object.md)
    * [抽象](docs/book/01-What-is-an-Object.md#抽象)
    * [接口](docs/book/01-What-is-an-Object.md#接口)
    * [服务提供](docs/book/01-What-is-an-Object.md#服务提供)
    * [封装](docs/book/01-What-is-an-Object.md#封装)
    * [复用](docs/book/01-What-is-an-Object.md#复用)
    * [继承](docs/book/01-What-is-an-Object.md#继承)
    * [多态](docs/book/01-What-is-an-Object.md#多态)
    * [单继承](docs/book/01-What-is-an-Object.md#单继承)
    * [集合](docs/book/01-What-is-an-Object.md#集合)
    * [生命周期](docs/book/01-What-is-an-Object.md#生命周期)
    * [异常处理](docs/book/01-What-is-an-Object.md#异常处理)
    * [本章小结](docs/book/01-What-is-an-Object.md#本章小结)
* [第二章 安装Java和本书用例](docs/book/02-Installing-Java-and-the-Book-Examples.md)
    * [编辑器](docs/book/02-Installing-Java-and-the-Book-Examples.md#编辑器)
    * [Shell](docs/book/02-Installing-Java-and-the-Book-Examples.md#Shell)
    * [Java安装](docs/book/02-Installing-Java-and-the-Book-Examples.md#Java安装)
    * [校验安装](docs/book/02-Installing-Java-and-the-Book-Examples.md#校验安装)
    * [安装和运行代码示例](docs/book/02-Installing-Java-and-the-Book-Examples.md#安装和运行代码示例)
* [第三章 万物皆对象](docs/book/03-Objects-Everywhere.md)
    * [对象操纵](docs/book/03-Objects-Everywhere.md#对象操纵)
    * [对象创建](docs/book/03-Objects-Everywhere.md#对象创建)
    * [代码注释](docs/book/03-Objects-Everywhere.md#代码注释)
    * [对象清理](docs/book/03-Objects-Everywhere.md#对象清理)
    * [类的创建](docs/book/03-Objects-Everywhere.md#类的创建)
    * [程序编写](docs/book/03-Objects-Everywhere.md#程序编写)
    * [小试牛刀](docs/book/03-Objects-Everywhere.md#小试牛刀)
    * [编码风格](docs/book/03-Objects-Everywhere.md#编码风格)
    * [本章小结](docs/book/03-Objects-Everywhere.md#本章小结)
* [第四章 运算符](docs/book/04-Operators.md)
    * [使用说明](docs/book/04-Operators.md#使用说明)
    * [优先级](docs/book/04-Operators.md#优先级)
    * [赋值](docs/book/04-Operators.md#赋值)
    * [算术运算符](docs/book/04-Operators.md#算术运算符)
    * [递增和递减](docs/book/04-Operators.md#递增和递减)
    * [关系运算符](docs/book/04-Operators.md#关系运算符)
    * [逻辑运算符](docs/book/04-Operators.md#逻辑运算符)
    * [字面值常量](docs/book/04-Operators.md#字面值常量)
    * [按位运算符](docs/book/04-Operators.md#按位运算符)
    * [移位运算符](docs/book/04-Operators.md#移位运算符)
    * [三元运算符](docs/book/04-Operators.md#三元运算符)
    * [字符串运算符](docs/book/04-Operators.md#字符串运算符)
    * [常见陷阱](docs/book/04-Operators.md#常见陷阱)
    * [类型转换](docs/book/04-Operators.md#类型转换)
    * [Java没有sizeof](docs/book/04-Operators.md#Java没有sizeof)
    * [运算符总结](docs/book/04-Operators.md#运算符总结)
    * [本章小结](docs/book/04-Operators.md#本章小结)
* [第五章 控制流](docs/book/05-Control-Flow.md)
    * [true和flase](docs/book/05-Control-Flow.md#true和flase)
    * [if-else](docs/book/05-Control-Flow.md#if-else)
    * [迭代语句](docs/book/05-Control-Flow.md#迭代语句)
    * [for-in语法](docs/book/05-Control-Flow.md#for-in语法)
    * [return](docs/book/05-Control-Flow.md#return)
    * [break和continue](docs/book/05-Control-Flow.md#break和continue)
    * [臭名昭著的goto](docs/book/05-Control-Flow.md#臭名昭著的goto)
    * [switch](docs/book/05-Control-Flow.md#switch)
    * [switch字符串](docs/book/05-Control-Flow.md#switch字符串)
    * [本章小结](docs/book/05-Control-Flow.md#本章小结)
* [第六章 初始化和清理](docs/book/06-Housekeeping.md)
    * [利用构造器保证初始化](docs/book/06-Housekeeping.md#利用构造器保证初始化)
    * [方法重载](docs/book/06-Housekeeping.md#方法重载)
    * [无参构造器](docs/book/06-Housekeeping.md#无参构造器)
    * [this关键字](docs/book/06-Housekeeping.md#this关键字)
    * [垃圾回收器](docs/book/06-Housekeeping.md#垃圾回收器)
    * [成员初始化](docs/book/06-Housekeeping.md#成员初始化)
    * [构造器初始化](docs/book/06-Housekeeping.md#构造器初始化)
    * [数组初始化](docs/book/06-Housekeeping.md#数组初始化)
    * [枚举类型](docs/book/06-Housekeeping.md#枚举类型)
    * [本章小结](docs/book/06-Housekeeping.md#本章小结)
* [第七章 封装](docs/book/07-Implementation-Hiding.md)
    * [包的概念](docs/book/07-Implementation-Hiding.md#包的概念)
    * [访问权限修饰符](docs/book/07-Implementation-Hiding.md#访问权限修饰符)
    * [接口和实现](docs/book/07-Implementation-Hiding.md#接口和实现)
    * [类访问权限](docs/book/07-Implementation-Hiding.md#类访问权限)
    * [本章小结](docs/book/07-Implementation-Hiding.md#本章小结)
* [第八章 复用](docs/book/08-Reuse.md)
    * [组合语法](docs/book/08-Reuse.md#组合语法)
    * [继承语法](docs/book/08-Reuse.md#继承语法)
    * [委托](docs/book/08-Reuse.md#委托)
    * [结合组合与继承](docs/book/08-Reuse.md#结合组合与继承)
    * [组合与继承的选择](docs/book/08-Reuse.md#组合与继承的选择)
    * [protected](docs/book/08-Reuse.md#protected)
    * [向上转型](docs/book/08-Reuse.md#向上转型)
    * [final关键字](docs/book/08-Reuse.md#final关键字)
    * [类初始化和加载](docs/book/08-Reuse.md#类初始化和加载)
    * [本章小结](docs/book/08-Reuse.md#本章小结)
* [第九章 多态](docs/book/09-Polymorphism.md)
    * [向上转型回溯](docs/book/09-Polymorphism.md#向上转型回溯)
    * [深入理解](docs/book/09-Polymorphism.md#深入理解)
    * [构造器和多态](docs/book/09-Polymorphism.md#构造器和多态)
    * [返回类型协变](docs/book/09-Polymorphism.md#返回类型协变)
    * [使用继承设计](docs/book/09-Polymorphism.md#使用继承设计)
    * [本章小结](docs/book/09-Polymorphism.md#本章小结)
* [第十章 接口](docs/book/10-Interfaces.md)
    * [抽象类和方法](docs/book/10-Interfaces.md#抽象类和方法)
    * [接口创建](docs/book/10-Interfaces.md#接口创建)
    * [抽象类和接口](docs/book/10-Interfaces.md#抽象类和接口)
    * [完全解耦](docs/book/10-Interfaces.md#完全解耦)
    * [多接口结合](docs/book/10-Interfaces.md#多接口结合)
    * [使用继承扩展接口](docs/book/10-Interfaces.md#使用继承扩展接口)
    * [接口适配](docs/book/10-Interfaces.md#接口适配)
    * [接口字段](docs/book/10-Interfaces.md#接口字段)
    * [接口嵌套](docs/book/10-Interfaces.md#接口嵌套)
    * [接口和工厂方法模式](docs/book/10-Interfaces.md#接口和工厂方法模式)
    * [本章小结](docs/book/10-Interfaces.md#本章小结)
* [第十一章 内部类](docs/book/11-Inner-Classes.md)
    * [创建内部类](docs/book/11-Inner-Classes.md#创建内部类)
    * [链接外部类](docs/book/11-Inner-Classes.md#链接外部类)
    * [内部类this和new的使用](docs/book/11-Inner-Classes.md#内部类this和new的使用)
    * [内部类向上转型](docs/book/11-Inner-Classes.md#内部类向上转型)
    * [内部类方法和作用域](docs/book/11-Inner-Classes.md#内部类方法和作用域)
    * [匿名内部类](docs/book/11-Inner-Classes.md#匿名内部类)
    * [嵌套类](docs/book/11-Inner-Classes.md#嵌套类)
    * [为什么需要内部类](docs/book/11-Inner-Classes.md#为什么需要内部类)
    * [继承内部类](docs/book/11-Inner-Classes.md#继承内部类)
    * [重写内部类](docs/book/11-Inner-Classes.md#重写内部类)
    * [内部类局部变量](docs/book/11-Inner-Classes.md#内部类局部变量)
    * [内部类标识符](docs/book/11-Inner-Classes.md#内部类标识符)
    * [本章小结](docs/book/11-Inner-Classes.md#本章小结)
* [第十二章 集合](docs/book/12-Collections.md)
    * [泛型和类型安全的集合](docs/book/12-Collections.md#泛型和类型安全的集合)
    * [基本概念](docs/book/12-Collections.md#基本概念)
    * [添加元素组](docs/book/12-Collections.md#添加元素组)
    * [集合的打印](docs/book/12-Collections.md#集合的打印)
    * [列表List](docs/book/12-Collections.md#列表List)
    * [迭代器Iterators](docs/book/12-Collections.md#迭代器Iterators)
    * [链表LinkedList](docs/book/12-Collections.md#链表LinkedList)
    * [堆栈Stack](docs/book/12-Collections.md#堆栈Stack)
    * [集合Set](docs/book/12-Collections.md#集合Set)
    * [映射Map](docs/book/12-Collections.md#映射Map)
    * [队列Queue](docs/book/12-Collections.md#队列Queue)
    * [集合与迭代器](docs/book/12-Collections.md#集合与迭代器)
    * [for-in和迭代器](docs/book/12-Collections.md#for-in和迭代器)
    * [本章小结](docs/book/12-Collections.md#本章小结)
* [第十三章 函数式编程](docs/book/13-Functional-Programming.md)
    * [新旧对比](docs/book/13-Functional-Programming.md#新旧对比)
    * [Lambda表达式](docs/book/13-Functional-Programming.md#Lambda表达式)
    * [方法引用](docs/book/13-Functional-Programming.md#方法引用)
    * [函数式接口](docs/book/13-Functional-Programming.md#函数式接口)
    * [高阶函数](docs/book/13-Functional-Programming.md#高阶函数)
    * [闭包](docs/book/13-Functional-Programming.md#闭包)
    * [函数组合](docs/book/13-Functional-Programming.md#函数组合)
    * [柯里化和部分求值](docs/book/13-Functional-Programming.md#柯里化和部分求值)
    * [纯函数式编程](docs/book/13-Functional-Programming.md#纯函数式编程)
    * [本章小结](docs/book/13-Functional-Programming.md#本章小结)
* [第十四章 流式编程](docs/book/14-Streams.md)
    * [流支持](docs/book/14-Streams.md#流支持)
    * [流创建](docs/book/14-Streams.md#流创建)
    * [中级流操作](docs/book/14-Streams.md#中级流操作)
    * [Optional类](docs/book/14-Streams.md#Optional类)
    * [终端操作](docs/book/14-Streams.md#终端操作)
    * [本章小结](docs/book/14-Streams.md#本章小结)
* [第十五章 异常](docs/book/15-Exceptions.md)
    * [异常概念](docs/book/15-Exceptions.md#异常概念)
    * [基本异常](docs/book/15-Exceptions.md#基本异常)
    * [异常捕获](docs/book/15-Exceptions.md#异常捕获)
    * [自定义异常](docs/book/15-Exceptions.md#自定义异常)
    * [异常规范](docs/book/15-Exceptions.md#异常规范)
    * [任意异常捕获](docs/book/15-Exceptions.md#任意异常捕获)
    * [Java标准异常](docs/book/15-Exceptions.md#Java标准异常)
    * [finally关键字](docs/book/15-Exceptions.md#finally关键字)
    * [异常限制](docs/book/15-Exceptions.md#异常限制)
    * [异常构造](docs/book/15-Exceptions.md#异常构造)
    * [Try-With-Resources用法](docs/book/15-Exceptions.md#Try-With-Resources用法)
    * [异常匹配](docs/book/15-Exceptions.md#异常匹配)
    * [异常准则](docs/book/15-Exceptions.md#异常准则)
    * [异常指南](docs/book/15-Exceptions.md#异常指南)
    * [本章小结](docs/book/15-Exceptions.md#本章小结)
* [第十六章 代码校验](docs/book/16-Validating-Your-Code.md)
    * [测试](docs/book/16-Validating-Your-Code.md#测试)
    * [前提条件](docs/book/16-Validating-Your-Code.md#前提条件)
    * [测试驱动开发](docs/book/16-Validating-Your-Code.md#测试驱动开发)
    * [日志](docs/book/16-Validating-Your-Code.md#日志)
    * [调试](docs/book/16-Validating-Your-Code.md#调试)
    * [基准测试](docs/book/16-Validating-Your-Code.md#基准测试)
    * [分析和优化](docs/book/16-Validating-Your-Code.md#分析和优化)
    * [风格检测](docs/book/16-Validating-Your-Code.md#风格检测)
    * [静态错误分析](docs/book/16-Validating-Your-Code.md#静态错误分析)
    * [代码重审](docs/book/16-Validating-Your-Code.md#代码重审)
    * [结对编程](docs/book/16-Validating-Your-Code.md#结对编程)
    * [重构](docs/book/16-Validating-Your-Code.md#重构)
    * [持续集成](docs/book/16-Validating-Your-Code.md#持续集成)
    * [本章小结](docs/book/16-Validating-Your-Code.md#本章小结)
* [第十七章 文件](docs/book/17-Files.md)
    * [文件和目录路径](docs/book/17-Files.md#文件和目录路径)
    * [目录](docs/book/17-Files.md#目录)
    * [文件系统](docs/book/17-Files.md#文件系统)
    * [路径监听](docs/book/17-Files.md#路径监听)
    * [文件查找](docs/book/17-Files.md#文件查找)
    * [文件读写](docs/book/17-Files.md#文件读写)
    * [本章小结](docs/book/17-Files.md#本章小结)
* [第十八章 字符串](docs/book/18-Strings.md)
    * [字符串的不可变](docs/book/18-Strings.md#字符串的不可变)
    * [重载和StringBuilder](docs/book/18-Strings.md#重载和StringBuilder)
    * [意外递归](docs/book/18-Strings.md#意外递归)
    * [字符串操作](docs/book/18-Strings.md#字符串操作)
    * [格式化输出](docs/book/18-Strings.md#格式化输出)
    * [常规表达式](docs/book/18-Strings.md#常规表达式)
    * [扫描输入](docs/book/18-Strings.md#扫描输入)
    * [StringTokenizer类](docs/book/18-Strings.md#StringTokenizer类)
    * [本章小结](docs/book/18-Strings.md#本章小结)
* [第十九章 类型信息](docs/book/19-Type-Information.md)
    * [运行时类型信息](docs/book/19-Type-Information.md#运行时类型信息)
    * [类的对象](docs/book/19-Type-Information.md#类的对象)
    * [类型转换检测](docs/book/19-Type-Information.md#类型转换检测)
    * [注册工厂](docs/book/19-Type-Information.md#注册工厂)
    * [类的等价比较](docs/book/19-Type-Information.md#类的等价比较)
    * [反射运行时类信息](docs/book/19-Type-Information.md#反射运行时类信息)
    * [动态代理](docs/book/19-Type-Information.md#动态代理)
    * [Optional类](docs/book/19-Type-Information.md#Optional类)
    * [接口和类型](docs/book/19-Type-Information.md#接口和类型)
    * [本章小结](docs/book/19-Type-Information.md#本章小结)
* [第二十章 泛型](docs/book/20-Generics.md)
    * [简单泛型](docs/book/20-Generics.md#简单泛型)
    * [泛型接口](docs/book/20-Generics.md#泛型接口)
    * [泛型方法](docs/book/20-Generics.md#泛型方法)
    * [复杂模型构建](docs/book/20-Generics.md#复杂模型构建)
    * [泛型擦除](docs/book/20-Generics.md#泛型擦除)
    * [补偿擦除](docs/book/20-Generics.md#补偿擦除)
    * [边界](docs/book/20-Generics.md#边界)
    * [通配符](docs/book/20-Generics.md#通配符)
    * [问题](docs/book/20-Generics.md#问题)
    * [自我约束类型](docs/book/20-Generics.md#自我约束类型)
    * [动态类型安全](docs/book/20-Generics.md#动态类型安全)
    * [泛型异常](docs/book/20-Generics.md#泛型异常)
    * [混入](docs/book/20-Generics.md#混入)
    * [潜在类型](docs/book/20-Generics.md#潜在类型)
    * [补偿不足](docs/book/20-Generics.md#补偿不足)
    * [辅助潜在类型](docs/book/20-Generics.md#辅助潜在类型)
    * [泛型的优劣](docs/book/20-Generics.md#泛型的优劣)
* [第二十一章 数组](docs/book/21-Arrays.md)
    * [数组特性](docs/book/21-Arrays.md#数组特性)
    * [一等对象](docs/book/21-Arrays.md#一等对象)
    * [返回数组](docs/book/21-Arrays.md#返回数组)
    * [多维数组](docs/book/21-Arrays.md#多维数组)
    * [泛型数组](docs/book/21-Arrays.md#泛型数组)
    * [Arrays的fill方法](docs/book/21-Arrays.md#Arrays的fill方法)
    * [Arrays的setAll方法](docs/book/21-Arrays.md#Arrays的setAll方法)
    * [增量生成](docs/book/21-Arrays.md#增量生成)
    * [随机生成](docs/book/21-Arrays.md#随机生成)
    * [泛型和基本数组](docs/book/21-Arrays.md#泛型和基本数组)
    * [数组元素修改](docs/book/21-Arrays.md#数组元素修改)
    * [数组并行](docs/book/21-Arrays.md#数组并行)
    * [Arrays工具类](docs/book/21-Arrays.md#Arrays工具类)
    * [数组拷贝](docs/book/21-Arrays.md#数组拷贝)
    * [数组比较](docs/book/21-Arrays.md#数组比较)
    * [流和数组](docs/book/21-Arrays.md#流和数组)
    * [数组排序](docs/book/21-Arrays.md#数组排序)
    * [binarySearch二分查找](docs/book/21-Arrays.md#binarySearch二分查找)
    * [parallelPrefix并行前缀](docs/book/21-Arrays.md#parallelPrefix并行前缀)
    * [本章小结](docs/book/21-Arrays.md#本章小结)
* [第二十二章 枚举](docs/book/22-Enumerations.md)
    * [基本功能](docs/book/22-Enumerations.md#基本功能)
    * [方法添加](docs/book/22-Enumerations.md#方法添加)
    * [switch语句](docs/book/22-Enumerations.md#switch语句)
    * [values方法](docs/book/22-Enumerations.md#values方法)
    * [实现而非继承](docs/book/22-Enumerations.md#实现而非继承)
    * [随机选择](docs/book/22-Enumerations.md#随机选择)
    * [使用接口组织](docs/book/22-Enumerations.md#使用接口组织)
    * [使用EnumSet替代Flags](docs/book/22-Enumerations.md#使用EnumSet替代Flags)
    * [使用EnumMap](docs/book/22-Enumerations.md#使用EnumMap)
    * [常量特定方法](docs/book/22-Enumerations.md#常量特定方法)
    * [多次调度](docs/book/22-Enumerations.md#多次调度)
    * [本章小结](docs/book/22-Enumerations.md#本章小结)
* [第二十三章 注解](docs/book/23-Annotations.md)
    * [基本语法](docs/book/23-Annotations.md#基本语法)
    * [编写注解处理器](docs/book/23-Annotations.md#编写注解处理器)
    * [使用javac处理注解](docs/book/23-Annotations.md#使用javac处理注解)
    * [基于注解的单元测试](docs/book/23-Annotations.md#基于注解的单元测试)
    * [本章小结](docs/book/23-Annotations.md#本章小结)
* [第二十四章 并发编程](docs/book/24-Concurrent-Programming.md)
    * [术语问题](docs/book/24-Concurrent-Programming.md#术语问题)
    * [并发的超能力](docs/book/24-Concurrent-Programming.md#并发的超能力)
    * [针对速度](docs/book/24-Concurrent-Programming.md#针对速度)
    * [四句格言](docs/book/24-Concurrent-Programming.md#四句格言)
    * [残酷的真相](docs/book/24-Concurrent-Programming.md#残酷的真相)
    * [本章其余部分](docs/book/24-Concurrent-Programming.md#本章其余部分)
    * [并行流](docs/book/24-Concurrent-Programming.md#并行流)
    * [创建和运行任务](docs/book/24-Concurrent-Programming.md#创建和运行任务)
    * [终止耗时任务](docs/book/24-Concurrent-Programming.md#终止耗时任务)
    * [CompletableFuture类](docs/book/24-Concurrent-Programming.md#CompletableFuture类)
    * [死锁](docs/book/24-Concurrent-Programming.md#死锁)
    * [构造函数非线程安全](docs/book/24-Concurrent-Programming.md#构造函数非线程安全)
    * [复杂性和代价](docs/book/24-Concurrent-Programming.md#复杂性和代价)
    * [本章小结](docs/book/24-Concurrent-Programming.md#本章小结)
* [第二十五章 设计模式](docs/book/25-Patterns.md)
    * [概念](docs/book/25-Patterns.md#概念)
    * [构建型](docs/book/25-Patterns.md#构建型)
    * [面向实施](docs/book/25-Patterns.md#面向实施)
    * [工厂模式](docs/book/25-Patterns.md#工厂模式)
    * [函数对象](docs/book/25-Patterns.md#函数对象)
    * [接口改变](docs/book/25-Patterns.md#接口改变)
    * [解释器](docs/book/25-Patterns.md#解释器)
    * [回调](docs/book/25-Patterns.md#回调)
    * [多次调度](docs/book/25-Patterns.md#多次调度)
    * [模式重构](docs/book/25-Patterns.md#模式重构)
    * [抽象用法](docs/book/25-Patterns.md#抽象用法)
    * [多次派遣](docs/book/25-Patterns.md#多次派遣)
    * [访问者模式](docs/book/25-Patterns.md#访问者模式)
    * [RTTI的优劣](docs/book/25-Patterns.md#RTTI的优劣)
    * [本章小结](docs/book/25-Patterns.md#本章小结)

* [附录:补充](docs/book/Appendix-Supplements.md)
    * [可下载的补充](docs/book/Appendix-Supplements.md#可下载的补充)
    * [通过Thinking-in-C来巩固Java基础](docs/book/Appendix-Supplements.md#通过Thinking-in-C来巩固Java基础)
    * [动手实践](docs/book/Appendix-Supplements.md#动手实践)
* [附录:编程指南](docs/book/Appendix-Programming-Guidelines.md)
    * [设计](docs/book/Appendix-Programming-Guidelines.md#设计)
    * [实现](docs/book/Appendix-Programming-Guidelines.md#实现)
* [附录:文档注释](docs/book/Appendix-Javadoc.md)
* [附录:对象传递和返回](docs/book/Appendix-Passing-and-Returning-Objects.md)
    * [传递引用](docs/book/Appendix-Passing-and-Returning-Objects.md#传递引用)
    * [本地拷贝](docs/book/Appendix-Passing-and-Returning-Objects.md#本地拷贝)
    * [控制克隆](docs/book/Appendix-Passing-and-Returning-Objects.md#控制克隆)
    * [不可变类](docs/book/Appendix-Passing-and-Returning-Objects.md#不可变类)
    * [本章小结](docs/book/Appendix-Passing-and-Returning-Objects.md#本章小结)
* [附录:流式IO](docs/book/Appendix-IO-Streams.md)
    * [输入流类型](docs/book/Appendix-IO-Streams.md#输入流类型)
    * [输出流类型](docs/book/Appendix-IO-Streams.md#输出流类型)
    * [添加属性和有用的接口](docs/book/Appendix-IO-Streams.md#添加属性和有用的接口)
    * [Reader和Writer](docs/book/Appendix-IO-Streams.md#Reader和Writer)
    * [RandomAccessFile类](docs/book/Appendix-IO-Streams.md#RandomAccessFile类)
    * [IO流典型用途](docs/book/Appendix-IO-Streams.md#IO流典型用途)
    * [本章小结](docs/book/Appendix-IO-Streams.md#本章小结)
* [附录:标准IO](docs/book/Appendix-Standard-IO.md)
    * [执行控制](docs/book/Appendix-Standard-IO.md#执行控制)
* [附录:新IO](docs/book/Appendix-New-IO.md)
    * [ByteBuffer](docs/book/Appendix-New-IO.md#ByteBuffer)
    * [转换数据](docs/book/Appendix-New-IO.md#数据转换)
    * [获取原始类型](docs/book/Appendix-New-IO.md#基本类型获取)
    * [视图缓冲区](docs/book/Appendix-New-IO.md#视图缓冲区)
    * [使用缓冲区进行数据操作](docs/book/Appendix-New-IO.md#缓冲区数据操作)
    * [内存映射文件](docs/book/Appendix-New-IO.md#内存映射文件)
    * [文件锁定](docs/book/Appendix-New-IO.md#文件锁定)
* [附录:理解equals和hashCode方法](docs/book/Appendix-Understanding-equals-and-hashCode.md)
    * [equals典范](docs/book/Appendix-Understanding-equals-and-hashCode.md#equals典范)
    * [哈希和哈希码](docs/book/Appendix-Understanding-equals-and-hashCode.md#哈希和哈希码)
    * [调整HashMap](docs/book/Appendix-Understanding-equals-and-hashCode.md#调整HashMap)
* [附录:集合主题](docs/book/Appendix-Collection-Topics.md)
    * [示例数据](docs/book/Appendix-Collection-Topics.md#示例数据)
    * [List行为](docs/book/Appendix-Collection-Topics.md#List行为)
    * [Set行为](docs/book/Appendix-Collection-Topics.md#Set行为)
    * [在Map中使用函数式操作](docs/book/Appendix-Collection-Topics.md#在Map中使用函数式操作)
    * [选择Map片段](docs/book/Appendix-Collection-Topics.md#选择Map片段)
    * [填充集合](docs/book/Appendix-Collection-Topics.md#填充集合)
    * [使用享元（Flyweight）自定义Collection和Map](docs/book/Appendix-Collection-Topics.md#使用享元（Flyweight）自定义Collection和Map)
    * [集合功能](docs/book/Appendix-Collection-Topics.md#集合功能)
    * [可选操作](docs/book/Appendix-Collection-Topics.md#可选操作)
    * [Set和存储顺序](docs/book/Appendix-Collection-Topics.md#Set和存储顺序)
    * [队列](docs/book/Appendix-Collection-Topics.md#队列)
    * [理解Map](docs/book/Appendix-Collection-Topics.md#理解Map)
    * [集合工具类](docs/book/Appendix-Collection-Topics.md#集合工具类)
    * [持有引用](docs/book/Appendix-Collection-Topics.md#持有引用)
    * [Java 1.0 / 1.1 的集合类](docs/book/Appendix-Collection-Topics.md#避免旧式类库)
    * [本章小结](docs/book/Appendix-Collection-Topics.md#本章小结)
* [附录:并发底层原理](docs/book/Appendix-Low-Level-Concurrency.md)
    * [线程](docs/book/Appendix-Low-Level-Concurrency.md#线程)
    * [异常捕获](docs/book/Appendix-Low-Level-Concurrency.md#异常捕获)
    * [资源共享](docs/book/Appendix-Low-Level-Concurrency.md#资源共享)
    * [volatile关键字](docs/book/Appendix-Low-Level-Concurrency.md#volatile关键字)
    * [原子性](docs/book/Appendix-Low-Level-Concurrency.md#原子性)
    * [临界区](docs/book/Appendix-Low-Level-Concurrency.md#临界区)
    * [库组件](docs/book/Appendix-Low-Level-Concurrency.md#库组件)
    * [本章小结](docs/book/Appendix-Low-Level-Concurrency.md#本章小结)
* [附录:数据压缩](docs/book/Appendix-Data-Compression.md)
    * [使用Gzip简单压缩](docs/book/Appendix-Data-Compression.md#使用Gzip简单压缩)
    * [使用zip多文件存储](docs/book/Appendix-Data-Compression.md#使用zip多文件存储)
    * [Java的jar](docs/book/Appendix-Data-Compression.md#Java的jar)
* [附录:对象序列化](docs/book/Appendix-Object-Serialization.md)
    * [查找类](docs/book/Appendix-Object-Serialization.md#查找类)
    * [控制序列化](docs/book/Appendix-Object-Serialization.md#控制序列化)
    * [使用持久化](docs/book/Appendix-Object-Serialization.md#使用持久化)
* [附录:静态语言类型检查](docs/book/Appendix-Benefits-and-Costs-of-Static-Type-Checking.md)
    * [前言](docs/book/Appendix-Benefits-and-Costs-of-Static-Type-Checking.md#前言)
    * [静态类型检查和测试](docs/book/Appendix-Benefits-and-Costs-of-Static-Type-Checking.md#静态类型检查和测试)
    * [如何提升打字](docs/book/Appendix-Benefits-and-Costs-of-Static-Type-Checking.md#如何提升打字)
    * [生产力的成本](docs/book/Appendix-Benefits-and-Costs-of-Static-Type-Checking.md#生产力的成本)
    * [静态和动态](docs/book/Appendix-Benefits-and-Costs-of-Static-Type-Checking.md#静态和动态)
* [附录:C++和Java的优良传统](docs/book/Appendix-The-Positive-Legacy-of-C-plus-plus-and-Java.md)
* [附录:成为一名程序员](docs/book/Appendix-Becoming-a-Programmer.md)
    * [如何开始](docs/book/Appendix-Becoming-a-Programmer.md#如何开始)
    * [码农生涯](docs/book/Appendix-Becoming-a-Programmer.md#码农生涯)
    * [百分之五的神话](docs/book/Appendix-Becoming-a-Programmer.md#百分之五的神话)
    * [重在动手](docs/book/Appendix-Becoming-a-Programmer.md#重在动手)
    * [像打字般编程](docs/book/Appendix-Becoming-a-Programmer.md#像打字般编程)
    * [做你喜欢的事](docs/book/Appendix-Becoming-a-Programmer.md#做你喜欢的事)
* [词汇表](docs/book/GLOSSARY.md)

