Introduction
译者的话
封面
前言
教学目标
语言设计错误
测试用例
普及性
关于安卓
电子版权声明
版本说明
封面设计
感谢的人
献礼
简介
前提条件
JDK文档
C编程思想
源码下载
编码样式
BUG提交
邮箱订阅
Java图形界面
第一章 对象的概念
抽象
接口
服务提供
封装
复用
继承
多态
单继承
集合
生命周期
异常处理
本章小结
第二章 安装Java和本书用例
编辑器
Shell
Java安装
校验安装
安装和运行代码示例
第三章 万物皆对象
对象操纵
对象创建
代码注释
对象清理
类的创建
程序编写
小试牛刀
编码风格
本章小结
第四章 运算符
使用说明
优先级
赋值
算术运算符
递增和递减
关系运算符
逻辑运算符
字面值常量
按位运算符
移位运算符
三元运算符
字符串运算符
常见陷阱
类型转换
Java没有sizeof
运算符总结
本章小结
第五章 控制流
true和false
if-else
迭代语句
for-in语法
return
break和continue
臭名昭著的goto
switch
switch字符串
本章小结
第六章 初始化和清理
利用构造器保证初始化
方法重载
无参构造器
this关键字
垃圾回收器
成员初始化
构造器初始化
数组初始化
枚举类型
本章小结
第七章 封装
包的概念
访问权限修饰符
接口和实现
类访问权限
本章小结
第八章 复用
组合语法
继承语法
委托
结合组合与继承
组合与继承的选择
protected
向上转型
final关键字
类初始化和加载
本章小结
第九章 多态
向上转型回溯
深入理解
构造器和多态
返回类型协变
使用继承设计
本章小结
第十章 接口
抽象类和方法
接口创建
抽象类和接口
完全解耦
多接口结合
使用继承扩展接口
接口适配
接口字段
接口嵌套
接口和工厂方法模式
本章小结
第十一章 内部类
创建内部类
链接外部类
内部类this和new的使用
内部类向上转型
内部类方法和作用域
匿名内部类
嵌套类
为什么需要内部类
继承内部类
重写内部类
内部类局部变量
内部类标识符
本章小结
第十二章 集合
泛型和类型安全的集合
基本概念
添加元素组
集合的打印
列表List
迭代器Iterators
链表LinkedList
堆栈Stack
集合Set
映射Map
队列Queue
集合与迭代器
for-in和迭代器
本章小结
第十三章 函数式编程
新旧对比
Lambda表达式
方法引用
函数式接口
高阶函数
闭包
函数组合
柯里化和部分求值
纯函数式编程
本章小结
第十四章 流式编程
流支持
流创建
中级流操作
Optional类
终端操作
本章小结
第十五章 异常
异常概念
基本异常
异常捕获
自定义异常
异常规范
任意异常捕获
Java标准异常
finally关键字
异常限制
异常构造
Try-With-Resources用法
异常匹配
异常准则
异常指南
本章小结
第十六章 代码校验
测试
前提条件
测试驱动开发
日志
调试
基准测试
分析和优化
风格检测
静态错误分析
代码重审
结对编程
重构
持续集成
本章小结
第十七章 文件
文件和目录路径
目录
文件系统
路径监听
文件查找
文件读写
本章小结
第十八章 字符串
字符串的不可变
重载和StringBuilder
意外递归
字符串操作
格式化输出
常规表达式
扫描输入
StringTokenizer类
本章小结
第十九章 类型信息
运行时类型信息
类的对象
类型转换检测
注册工厂
类的等价比较
反射运行时类信息
动态代理
Optional类
接口和类型
本章小结
第二十章 泛型
简单泛型
泛型接口
泛型方法
复杂模型构建
泛型擦除
补偿擦除
边界
通配符
问题
自我约束类型
动态类型安全
泛型异常
混入
潜在类型
补偿不足
辅助潜在类型
泛型的优劣
第二十一章 数组
数组特性
一等对象
返回数组
多维数组
泛型数组
Arrays的fill方法
Arrays的setAll方法
增量生成
随机生成
泛型和基本数组
数组元素修改
数组并行
Arrays工具类
数组拷贝
数组比较
流和数组
数组排序
binarySearch二分查找
parallelPrefix并行前缀
本章小结
第二十二章 枚举
基本功能
方法添加
switch语句
values方法
实现而非继承
随机选择
使用接口组织
使用EnumSet替代Flags
使用EnumMap
常量特定方法
多次调度
本章小结
第二十三章 注解
基本语法
编写注解处理器
使用javac处理注解
基于注解的单元测试
本章小结
第二十四章 并发编程
术语问题
并发的超能力
针对速度
四句格言
残酷的真相
本章其余部分
并行流
创建和运行任务
终止耗时任务
CompletableFuture类
死锁
构造函数非线程安全
复杂性和代价
本章小结
第二十五章 设计模式
概念
构建型
面向实施
工厂模式
函数对象
接口改变
解释器
回调
多次调度
模式重构
抽象用法
多次派遣
访问者模式
RTTI的优劣
本章小结
附录:补充
可下载的补充
通过Thinking-in-C来巩固Java基础
动手实践
附录:编程指南
设计
实现
附录:文档注释
附录:对象传递和返回
传递引用
本地拷贝
控制克隆
不可变类
本章小结
附录:流式IO
输入流类型
输出流类型
添加属性和有用的接口
Reader和Writer
RandomAccessFile类
IO流典型用途
本章小结
附录:标准IO
执行控制
附录:新IO
ByteBuffer
转换数据
获取原始类型
视图缓冲区
使用缓冲区进行数据操作
内存映射文件
文件锁定
附录:理解equals和hashCode方法
equals典范
哈希和哈希码
调整HashMap
附录:集合主题
示例数据
List行为
Set行为
在Map中使用函数式操作
选择Map片段
填充集合
使用享元(Flyweight)自定义Collection和Map
集合功能
可选操作
Set和存储顺序
队列
理解Map
集合工具类
持有引用
Java 1.0 / 1.1 的集合类
本章小结
附录:并发底层原理
线程
异常捕获
资源共享
volatile关键字
原子性
临界区
库组件
本章小结
附录:数据压缩
使用Gzip简单压缩
使用zip多文件存储
Java的jar
附录:对象序列化
查找类
控制序列化
使用持久化
附录:静态语言类型检查
前言
静态类型检查和测试
如何提升打字
生产力的成本
静态和动态
附录:C++和Java的优良传统
附录:成为一名程序员
如何开始
码农生涯
百分之五的神话
重在动手
像打字般编程
做你喜欢的事
词汇表
本书使用 GitBook 发布
附录:静态语言类型检查
[TOC]
附录:静态语言类型检查
这是一本我多年来撰写的经过编辑过的论文集,论文集试图将静态检查语言和动态语言之间的争论放到一个正确的角度。还有一个前言部分,描述了我最近对这个话题的思考和见解。
前言
静态类型检查和测试
如何提升打字
生产力的成本
静态和动态
results matching "
"
No results matching "
"
results matching "
"
No results matching "
"