人民邮电出版社有限公司店铺主页二维码
人民邮电出版社有限公司 微信认证
人民邮电出版社微店,为您提供最全面,最专业的一站式购书服务
微信扫描二维码,访问我们的微信店铺
你可以使用微信联系我们,随时随地的购物、客服咨询、查询订单和物流...

On Java 中文版 进阶卷

97.40
运费: ¥ 0.00-20.00
On Java 中文版 进阶卷 商品图0
On Java 中文版 进阶卷 商品图1
On Java 中文版 进阶卷 商品缩略图0 On Java 中文版 进阶卷 商品缩略图1

商品详情

书名:On Java:中文版.进*卷  
定*:*29.8  
ISBN:9787**5585028  
作者:布鲁斯·埃克尔  
版次:第*版  
出版时间:2022-03  

内容提要:  

本书内容主要是对《On Java 中文版 基础卷》的拓展延伸,重点讲解 Java 的*级*性、并发、设计模式等相关进*知识,对*些和开发密切相关的底层操作(如 I/O 系统、底层并发、数据压缩等)进行深入探讨,同时针对基础卷的重点章节进行了补充说明(如第 3 章增补了*些关于集合的*级*性)。在附录中,作者给出了 67 条关于低级程序设计和编写代码的建议,并分享了自己成为程序员的*些经验之谈。

本书适合有*定项目开发经验的 Java 程序员阅读。






作者简介:  

【作者简介】

布鲁斯·埃克尔(Bruce Eckel)

C++ 标准委员会的*始成员之*,技术顾问,*注于编程语言和软件系统设计方面的研究,常活跃于*各大技术研讨会。他自 *986 年以来,累计出版

Thinking in C++、Thinking in Java、On Java 8 等十余*计算机*,曾多次荣获 Jolt 最佳图书奖(被誉为“软件业界的奥斯卡”),其代表作

 Thinking in Java 被译为中文、日文、俄文、意大利文、波兰文、韩文等十几种语言,在*范围内产生了广泛影响。


【译者简介】

孙*,现任职于*度健康研发中心,*度技术委员会成员。从业十余年,熟悉 Java、PHP 等语言体系,同时也是*名语言文字爱好者。


陈德伟,深耕软件研发十余年,目前*注于金融系统研发工作。


臧秀涛,InfoQ 前会议内容总编。现于涛思数据负责开源时序数据库 TDengine 的社区生态。代表译作有《Java 性能*指南》、《C++ API 设计》、

《Groovy 程序设计》等。




目录:  

第 *章 枚举类型 00*

*.* 枚举类型的基本*性 / 00*

静态导入枚举类型 / 002

*.2 在枚举类型中增加自定义方

法 / 003

重载枚举类型中的方法 / 004

*.3 在switch语句中使用枚举 / 005

*.4 values()方法的*秘之处 / 006

*.5 实现,而*是继承 / 009

*.6 随机选择 / 0*0

*.7 使用接口来组织枚举 / 0**

*.8 用EnumSet来代替标识 / 0*5

*.9 使用EnumMap / 0*7

*.*0 常量*定方法 / 0*8

*.*0.* 用枚举实现职责链模

式 / 023

*.*0.2 用枚举实现状态机 / 027

*.** 多路分发 / 032

*.**.* 使用枚举类型分发 / 034

*.**.2 使用常量*定方法 / 036

*.**.3 使用EnumMap分发 / 038

*.**.4 使用二维数组 / 039

*.*2 支持模式匹配的新*性 / 04*

*.*3 新*性:switch中的箭头语

法 / 04*

*.*4 新*性:switch中的case

null / 042

*.*5 新*性:将switch作为表达

式 / 044

*.*6 新*性:智能转型 / 046

*.*7 新*性:模式匹配 / 048

*.*7.* 违反里氏替换原则 / 049

*.*7.2 守卫 / 053

*.*7.3 支配性 / 055

*.*7.4 覆盖范围 / 057

*.*8 总结 / 058

第 2章 对象传递和返回 060

2.* 传递引用 / 06*

引用别名 / 06*

2.2 *建本地副本 / 063

2.2.* 值传递 / 063

2.2.2 克隆对象 / 064

2.2.3 为类增加可克隆能力 / 065

2.2.4 成功的克隆 / 067

2.2.5 Object.clone()的效果 / 068

2.2.6 克隆组合对象 / 070

2.2.7 深拷贝ArrayList / 073

2.2.8 通过序列化进行深拷贝 / 074

2.2.9 在继承层次结构中增加可克隆性并向下覆盖 / 076

2.2.*0 为什么用这种奇怪的

设计 / 077

2.3 控制可克隆性 / 078

复制构造器 / 082

2.4 *可变类 / 086

2.4.* *建*可变类 / 088

2.4.2 *可变性的缺点 / 089

2.4.3 String很*殊 / 09*

2.5 总结 / 09*

第3章 集合主题 093

3.* 样例数据 / 093

3.2 List的行为 / 099

3.3 Set的行为 / *02

3.4 在Map上使用函数式操作 / *04

3.5 选择Map的*分元素 / *05

3.6 填充集合 / *07

3.6.* 使用Suppliers来填充Collection / *08

3.6.2 使用Suppliers来填充

Map / *09

3.7 使用享元自定义Collection和Map / **2

3.8 Collection的功能 / *23

3.9 可选的操作 / *25

*支持的操作 / *27

3.*0 Set与存储顺序 / *29

SortedSet / *32

3.** Queue / *34

3.**.* *先级队列 / *35

3.**.2 Deque / *36

3.*2 理解Map / *37

3.*2.* 性能 / *39

3.*2.2 SortedMap / *4*

3.*2.3 LinkedHashMap / *43

3.*3 工具函数 / *44

3.*3.* List上的排序和

查找 / *47

3.*3.2 *建*可修改的Collection或Map / *48

3.*3.3 同步Collection或

Map / *50

3.*4 持有引用 / *5*

WeakHashMap / *54

3.*5 Java *.0/*.*的集合类 / *55

3.*5.* Vector和

Enumeration / *55

3.*5.2 Hashtable / *56

3.*5.3 Stack / *57

3.*5.4 BitSet / *58

3.*6 总结 / *60

第4章 注解 *62

4.* 基本语法 / *63

4.*.* 定义注解 / *64

4.*.2 元注解 / *65

4.2 编写注解处理器 / *66

4.2.* 注解元素 / *67

4.2.2 默认值的限制 / *68

4.2.3 生成外*文件 / *68

4.2.4 注解*支持继承 / *72

4.2.5 实现处理器 / *72

4.3 用javac处理注解 / *74

4.3.* 最简单的处理器 / *75

4.3.2 更复杂的处理器 / *78

4.4 基于注解的单元测试 / *82

4.4.* 在@Unit中使用泛型 / *90

4.4.2 实现@Unit / *92

4.5 总结 / 202

第5章 并发编程 203

5.* 令人迷惑的术语 / 204

并发的新定义 / 206

5.2 并发的*能力 / 207

5.3 并发为速度而生 / 209

5.4 Java并发四定律 / 2**

5.4.* *要使用并发 / 2**

5.4.2 *切**可信,*切*很

重要 / 2*2

5.4.3 能运行并*代表没有

问题 / 2*2

5.4.4 你*究要理解并发 / 2*3

5.5 残酷的事实 / 2*4

5.6 本章剩余*分 / 2*6

5.7 并行流 / 2*8

5.7.* parallel()并非灵丹妙

药 / 2*9

5.7.2 parallel()和limit()的

作用 / 224

5.7.3 并行流只是看起来很简

单 / 228

5.8 *建和运行任务 / 228

5.8.* Task和Executor / 228

5.8.2 使用更多的线程 / 232

5.8.3 生成结果 / 234

5.8.4 作为任务的lambda与方法引用 / 236

5.9 *止长时间运行的任务 / 237

5.*0 CompletableFuture / 240

5.*0.* 基本用法 / 24*

5.*0.2 其他操作 / 244

5.*0.3 合并多个Completable-Future / 247

5.*0.4 模拟场景应用 / 25*

5.*0.5 异常 / 253

5.** 死锁 / 259

5.*2 构造器并*是线程*的 / 264

5.*3 工作量、复杂性、成本 / 268

5.*4 总结 / 273

5.*4.* 缺点 / 274

5.*4.2 Java核心设计的失败之

处 / 275

5.*4.3 其他的库 / 275

5.*4.4 设想*种为并发而设计的语言 / 276

5.*4.5 延伸阅读 / 276

第6章 底层并发 277

6.* 什么是线程? / 277

6.*.* 最佳线程数 / 279

6.*.2 我可以*建多少线程 / 280

6.2 捕获异常 / 282

6.3 共享资源 / 286

6.3.* 资源竞争 / 286

6.3.2 解决资源竞争 / 290

6.3.3 将EvenProducer同步化 / 292

6.4 volatile关键字 / 293

6.4.* 字分裂 / 293

6.4.2 可见性 / 294

6.4.3 (指令)重排序和先行发

生 / 295

6.4.4 何时使用volatile / 296

6.5 原子性 / 296

6.5.* Josh的序列号 / 300

6.5.2 原子类 / 303

6.6 临界区 / 304

6.6.* 在其他对象上进行同步 / 307

6.6.2 使用显式Lock对象 / 308

6.7 库组件 / 3*0

6.7.* 延迟队列DelayQueue / 3**

6.7.2 *先级阻塞队列Priority-BlockingQueue / 3*3

6.7.3 *锁集合 / 3*6

6.8 总结 / 3*7

第7章 Java I/O系统 3*9

7.* I/O流 / 3*9

7.*.* 各种InputStream类型 / 32*

7.*.2 各种OutputStream类型 / 32*

7.*.3 添加属性和有用的接口 / 322

7.*.4 各种Reader和Writer / 324

7.*.5 自成*家的Random-AccessFile / 327

7.*.6 I/O流的典型用法 / 328

7.*.7 小结 / 335

7.2 标准I/O / 335

7.2.* 从标准输入中读取 / 336

7.2.2 将System.out转换为PrintWriter / 336

7.2.3 标准I/O重定向 / 337

7.2.4 进程控制 / 338

7.3 新I/O系统 / 340

7.3.* 字节缓冲区ByteBuffer / 340

7.3.2 转换数据 / 344

7.3.3 获取基本类型 / 347

7.3.4 视图缓冲区 / 348

7.3.5 用缓冲区操纵数据 / 352

7.3.6 内存映射文件 / 357

7.3.7 文件加锁 / 36*

第8章 设计模式 364

8.* 设计模式的概念 / 364

8.2 单例模式 / 366

8.3 设计模式的分类 / 370

8.4 模板方法 / 370

8.5 封装实现 / 37*

8.5.* 代理模式 / 372

8.5.2 状态模式 / 373

8.5.3 状态机模式 / 376

8.6 工厂模式:封装对象的*建 / 377

8.6.* 动态工厂模式 / 380

8.6.2 多态工厂模式 / 38*

8.6.3 抽象工厂模式 / 382

8.7 函数对象模式 / 384

8.7.* 命令模式 / 385

8.7.2 策略模式 / 386

8.7.3 职责链模式 / 388

8.8 改变接口 / 39*

8.8.* 适配器模式 / 39*

8.8.2 外观模式 / 392

8.9 解释器模式:运行时的灵活

性 / 394

8.*0 回调 / 394

8.*0.* 观察者模式 / 394

8.*0.2 示例:观察花朵 / 395

8.*0.3 *个可视化的观察者示

例 / 398

8.** 多路分发 / 40*

8.*2 模式重构 / 405

8.*2.* Trash和它的子类 / 405

8.*2.2 信使对象 / 4*0

8.*2.3 使工厂通用化 / 4**

8.*2.4 从文件解析Trash / 4*2

8.*2.5 用DynaFactory实现回

收 / 4*5

8.*2.6 将用法抽象化 / 4*6

8.*2.7 用多路分发重新设计 / 420

8.*2.8 访问者模式 / 427

8.*2.9 反射是有害的? / 43*

8.*3 总结 / 435

编程指南 / 436

Javadoc / 446

理解equals()和hashCode() / 45*

数据压缩 / 475

对象序列化 / 48*

静态类型检查的利与弊 / 505



人民邮电出版社有限公司店铺主页二维码
人民邮电出版社有限公司 微信公众号认证
人民邮电出版社微店,为您提供最全面,最专业的一站式购书服务
扫描二维码,访问我们的微信店铺
随时随地的购物、客服咨询、查询订单和物流...

On Java 中文版 进阶卷

手机启动微信
扫一扫购买

收藏到微信 or 发给朋友

1. 打开微信,扫一扫左侧二维码

2. 点击右上角图标

点击右上角分享图标

3. 发送给朋友、分享到朋友圈、收藏

发送给朋友、分享到朋友圈、收藏

微信支付

支付宝

扫一扫购买

打开微信,扫一扫

或搜索微信号:renyoushe
人民邮电出版社官方微信公众号

收藏到微信 or 发给朋友

1. 打开微信,扫一扫左侧二维码

2. 点击右上角图标

点击右上角分享图标

3. 发送给朋友、分享到朋友圈、收藏

发送给朋友、分享到朋友圈、收藏