|
3 | 3 | * [Introduction](README.md)
|
4 | 4 |
|
5 | 5 | * [前言](Preface.md)
|
6 |
| - * [获取示例程序](Preface.md#获取示例程序) |
7 |
| - * [如何联系我们](Preface.md#如何联系我们) |
8 |
| - * [本书中使用的约定](Preface.md#本书中使用的约定) |
9 |
| - * [Safari®联机丛书](Preface.md#Safari®联机丛书) |
10 |
| - * [致谢](Preface.md#致谢) |
11 | 6 | * [第一部分:泛型](ch01/00_Introduction.md)
|
12 | 7 | * [第一章(简介)](ch01/00_Introduction.md#第一章(简介))
|
13 |
| - * [泛型](ch01/01_Generics.md#泛型) |
14 |
| - * [装箱与拆箱](ch01/02_Boxing_and_Unboxing.md#装箱与拆箱) |
15 |
| - * [循环](ch01/03_Foreach.md#循环) |
16 |
| - * [泛型方法和可变参数](ch01/04_Generic_Methods_and_Varargs.md#泛型方法和可变参数) |
17 |
| - * [断言](ch01/05_Assertions.md#断言) |
| 8 | + * [1.1 泛型](ch01/01_Generics.md#泛型) |
| 9 | + * [1.2 装箱与拆箱](ch01/02_Boxing_and_Unboxing.md#装箱与拆箱) |
| 10 | + * [1.3 循环](ch01/03_Foreach.md#循环) |
| 11 | + * [1.4 泛型方法和可变参数](ch01/04_Generic_Methods_and_Varargs.md#泛型方法和可变参数) |
| 12 | + * [1.5 断言](ch01/05_Assertions.md#断言) |
18 | 13 | * [第二章(子类型化和通配符)](ch02/00_Subtyping_and_Wildcards.md#第二章(子类型化和通配符))
|
19 |
| - * [子类型化和替代原则](ch02/01_Subtyping_and_the_Substitution_Principle.md#子类型化和替代原则) |
20 |
| - * [通配符和继承](ch02/02_Wildcards_with_extends.md#通配符和继承) |
21 |
| - * [通配符和超类](ch02/03_Wildcards_with_super.md#通配符和超类) |
22 |
| - * [获取和放置原则](ch02/04_The_Get_and_Put_Principle.md#获取和放置原则) |
| 14 | + * [2.1 子类型化和替代原则](ch02/01_Subtyping_and_the_Substitution_Principle.md#子类型化和替代原则) |
| 15 | + * [2.2 通配符和继承](ch02/02_Wildcards_with_extends.md#通配符和继承) |
| 16 | + * [2.3 通配符和超类](ch02/03_Wildcards_with_super.md#通配符和超类) |
| 17 | + * [2.4 获取和放置原则](ch02/04_The_Get_and_Put_Principle.md#获取和放置原则) |
| 18 | + * [2.5 数组](hc02/05_Arrays.md#数组) |
| 19 | + * [2.6 通配符与类型参数](ch02/06_Wildcards_Versus_Type_Parameters.md#通配符与类型参数) |
| 20 | + * [2.7 通配符捕获](ch02/07_Wildcard_Capture.md#通配符捕获) |
| 21 | + * [2.8 对通配符的限制](ch02/08_Restrictions_on_Wildcards.md#对通配符的限制) |
| 22 | + * [第三章(集合类)](ch03/00_Comparison_and_Bounds.md#集合类) |
| 23 | + * [3.1 可比较的](ch03/01_Comparable.md#可比较的) |
| 24 | + * [3.2 集合的最大值](ch03/02_Maximum_of_a_Collection.md#集合的最大值) |
| 25 | + * [3.3 水果相关示例](ch03/03_A_Fruity_Example.md#水果相关示例) |
| 26 | + * [3.4 比较](ch03/04_Comparator.md#比较) |
| 27 | + * [3.5 枚举类型](ch03/05_Enumerated_Types.md#枚举类型) |
| 28 | + * [3.6 多重界限](ch03/06_Multiple_Bounds.md#多重界限) |
| 29 | + * [3.7 桥梁](ch03/07_Bridges.md#桥梁) |
| 30 | + * [3.8 协变覆盖](ch03/08_Covariant_Overriding.md#协变覆盖) |
| 31 | + * [第四章(声明)](ch04/00_Declarations.md#声明) |
| 32 | + * [4.1 构造函数](ch04/01_Constructors.md#构造函数) |
| 33 | + * [4.2 静态成员](ch04/02_Static_Members.md#静态成员) |
| 34 | + * [4.3 嵌套类](ch04/03_Nested_Classes.md#嵌套类) |
| 35 | + * [4.4 擦除的工作原理](ch04/04_How_Erasure_Works.md#擦除的工作原理) |
| 36 | + * [第五章(进化,而不是革命)](ch05/00_Evolution_Not_Revolution.md#进化,而不是革命) |
| 37 | + * [5.1 旧版客户端的旧版库](ch05/01_Legacy_Library_with_Legacy_Client.md#旧版客户端的旧版库) |
| 38 | + * [5.2 具有通用客户端的通用库](ch05/02_Generic_Library_with_Generic_Client.md#具有通用客户端的通用库) |
| 39 | + * [5.3 具有传统客户端的通用库](ch05/03_Generic_Library_with_Legacy_Client.md#具有传统客户端的通用库) |
| 40 | + * [5.4 具有通用客户端的旧版库](ch05/04_Legacy_Library_with_Generic_Client.md#具有通用客户端的旧版库) |
| 41 | + * [5.5 结论](ch05/05_Conclusions.md#结论) |
| 42 | + * [第六章(具体化)](ch06/00_Reification.md#具体化) |
| 43 | + * [6.1 可定义类型](ch06/01_Reifiable_Types.md#可定义类型) |
| 44 | + * [6.2 实例测试和示例](ch06/02_Instance_Tests_and_Casts.md#实例测试和示例) |
| 45 | + * [6.3 异常处理](ch06/03_Exception_Handling.md#异常处理) |
| 46 | + * [6.4 数组创建](ch06/04_Array_Creation.md#数组创建) |
| 47 | + * [6.5 广告中的真理原则](ch06/05_The_Principle_of_Truth_in_Advertising.md#广告中的真理原则) |
| 48 | + * [6.6 不雅暴露的原则](ch06/06_The_Principle_of_Indecent_Exposure.md#不雅暴露的原则) |
| 49 | + * [6.7 如何定义ArrayList](ch06/07_How_to_Define_ArrayList.md#如何定义ArrayList) |
| 50 | + * [6.8 数组创建和可变参数](ch06/08_Array_Creation_and_Varargs.md#数组创建和可变参数) |
| 51 | + * [6.9 作为已弃用类型的阵列](ch06/09_Arrays_as_a_Deprecated_Type.md#作为已弃用类型的阵列) |
| 52 | + * [6.10 加起来](ch06/10_Summing_Up.md#加起来) |
| 53 | + * [第七章(反射)](ch07/00_Reflection.md#反射) |
| 54 | + * [7.1 反射的泛型](ch07/01_Generics_for_Reflection.md#反射的泛型) |
| 55 | + * [7.2 反射类型是可维持类型](ch07/02_Reflected_Types_are_Reifiable_Types.md#反射类型是可维持类型) |
| 56 | + * [7.3 对原始类型的反思](ch07/03_Reflection_for_Primitive_Types.md#对原始类型的反思) |
| 57 | + * [7.4 一个通用的反射库](ch07/04_A_Generic_Reflection_Library.md#一个通用的反射库) |
| 58 | + * [7.5 泛型的反思](ch07/05_Reflection_for_Generics.md#泛型的反思) |
| 59 | + * [7.6 反思泛型类型](ch07/06_Reflecting_Generic_Types.md#反思泛型类型) |
| 60 | + * [第八章(有效的泛型)](ch08/00_Effective_Generics.md#有效的泛型) |
| 61 | + * [8.1 调用遗留代码时要小心](ch08/01_Take_Care_when_Callin_Legacy_Code.md#调用遗留代码时要小心) |
| 62 | + * [8.2 使用选中的集合来强化安全性](ch08/02_Use_Checked_Collections_to_Enforce_Security.md#使用选中的集合来强化安全性) |
| 63 | + * [8.3 专注于创建可维持类型](ch08/03_Specialize_to_Create_Reifiable_Types.md#专注于创建可维持类型) |
| 64 | + * [8.4 保持二进制兼容性](ch08/04_Maintain_Binary_Compatibility.md#保持二进制兼容性) |
| 65 | + * [第九章(设计模式)](ch09/00_Design_Patterns.md#设计模式) |
| 66 | + * [9.1 游客](ch09/01_Visitor.md#游客) |
| 67 | + * [9.2 翻译员](ch09/02_Interpreter.md#翻译员) |
| 68 | + * [9.3 功能](ch09/03_Function.md#功能) |
| 69 | + * [9.4 策略](ch09/04_Strategy.md#策略) |
| 70 | + * [9.5 主题观察者](ch09/05_Subject-Observer.md#主题观察者) |
| 71 | +* [第二部分:集合](ch10/00_Collections.md#集合) |
| 72 | + * [第十章(集合)](ch10/00_Collections.md#集合) |
| 73 | + * [10.1 Java集合框架的主要接口](ch10/01_The_Main_Interfaces_of_the_Java.md#Java集合框架的主要接口) |
| 74 | + * [第十一章(初步措施)](ch11/00_Preliminaries.md#初步措施) |
| 75 | + * [11.1 可迭代和迭代器](ch11/01_Iterable_and_Iterators.md) |
| 76 | + * [11.2 实现](ch11/02_Implementations.md) |
| 77 | + * [11.3 效率与Ο符号](ch11/03_Efficiency_and_the_O-Notation.md#效率与Ο符号) |
| 78 | + * [11.4 契约](ch11/04_contract.md#契约) |
| 79 | + * [11.5 集合和线程安全](ch11/05_Collections_and_Thread_Safety.md#集合和线程安全) |
| 80 | + * [第十二章(集合接口)](ch12/00_The_Collection_Interface.md#集合接口) |
| 81 | + * [12.1 使用集合方法](ch12/01_Using_the_Methods_of_Collection.md#使用集合方法) |
| 82 | + * [12.2 集合实现](ch12/02_Implementing_Collection.md#集合实现) |
| 83 | + * [12.3 集合构造函数](ch12/03_Collection_Constructors.md#集合构造函数) |
| 84 | + * [第十三章(Sets)](ch13/00_Sets.md#Sets) |
| 85 | + * [13.1 实现Set](ch13/01_Implementing_Set.md#实现Set) |
| 86 | + * [13.2 SortedSet和NavigableSet](ch13/02_SortedSet_and_NavigableSet.md#SortedSet和NavigableSet) |
| 87 | + * [第十四章(Queues)](ch14/00_Queues.md#Queues) |
| 88 | + * [14.1 使用队列方法](ch14/01_Using_the_Methods_of_Queue.md#使用队列方法) |
| 89 | + * [14.2 队列的实现](ch14/02_Implementing_Queue.md#队列的实现) |
| 90 | + * [14.3 BlockingQueue](ch14/03_BlockingQueue.md#BlockingQueue) |
| 91 | + * [14.4 Deque](ch14/04_Deque.md#Deque) |
| 92 | + * [14.5 比较队列实现](ch14/05_Comparing_Queue_Implementations.md#比较队列实现) |
| 93 | + * [第十五章(Lists)](ch15/00_Lists.md#Lists) |
| 94 | + * [15.1 使用List的方法](ch15/01_Using_the_Methods_of_List.md#使用List的方法) |
| 95 | + * [15.2 实现List](ch15/02_Implementing_List.md#实现List) |
| 96 | + * [15.3 比较List实现](ch15/03_Comparing_List_Implementations.md#比较List实现) |
| 97 | + * [第十六章(Maps)](ch16/00_Maps.md#Maps) |
| 98 | + * [16.1 使用Map的方法](ch16/01_Using_the_Methods_of_Map.md#使用Map的方法) |
| 99 | + * [16.2 实现Map](ch16/02_Implementing_Map.md#实现Map) |
| 100 | + * [16.3 SortedMap和NavigableMap](ch16/03_SortedMap_and_NavigableMap.md#SortedMap和NavigableMap) |
| 101 | + * [16.4 ConcurrentMap](ch16/04_ConcurrentMap.md#ConcurrentMap) |
| 102 | + * [16.5 ConcurrentNavigableMap](ch16/05_ConcurrentNavigableMap.md#ConcurrentNavigableMap) |
| 103 | + * [16.6 比较Map的实现](ch16/06_Comparing_Map_Implementations.md#比较Map的实现) |
| 104 | + * [第十七章(集合类)](ch17/00_The_Collections_Class.md#集合类) |
| 105 | + * [17.1 通用算法](ch17/01_Generic_Algorithms.md#通用算法) |
| 106 | + * [17.2 收集工厂](ch17/02_Collection_Factories.md#收集工厂) |
| 107 | + * [17.3 包装](ch17/03_Wrappers.md#包装) |
| 108 | + * [17.4 其他方法](ch17/04_Other_Methods.md#其他方法) |
0 commit comments