Java解惑

Java解惑

出版信息

(美)布洛克·加夫特 / 陈昊鹏 / 人民邮电出版社 / 2010-11-22 / 49.00元

内容简介

你认为自己了解Java多少?你是个爱琢磨的代码侦探吗?你是否曾经花费数天时间去追踪一个由Java或其类库的陷阱和缺陷而导致的bug?你喜欢智力测验吗?本书正好适合你!

Bloch和Gafter继承了Effective Java一书的传统,深入研究了Java编程语言及其核心类库的细微之处。本书特写了95个噩梦般的谜题,中间穿插着许多有趣的视觉幻象,寓教于乐。任何具备Java知识的人都可以理解这些谜题,但甚至是最老练的程序员也会觉得它们具有挑战性。

多数的谜题都是些小程序,其行为诡秘,不可貌相。你能指出它们会做什么吗?根据这些谜题用到的特性以及各题的详细解惑方案,我们把它们松散地分成了几个部分。这些解惑方案超越了对程序行为的简单解释,向你展示下如何一劳永逸地避免底层的陷阱与缺陷。在本书的后面,有一个方便的陷阱和缺陷目录,可供以后参考。

一旦你解决了这些谜题,那些曾经愚弄过最具经验的Java程序员的隐晦且有违直觉的语言行为,将再也无法把你骗过。

作者简介

Joshua Bloch Google公司的首席工程师,获得过Jolt最畅销奖的《高效Java编程语言指南(Effective Java Programming Language Guide)》(Addison-Wesley,2001)一书的作者。他之前是Sun公司的杰出工程师和Transarc公司的资深系统设计师。Bloch领导了大量的Java平台特性的设计与实现工作,包括JDK 5.0中的语言改进和获奖的Java集合框架。他拥有卡耐基-梅隆大学计算机科学专业的博士学位。

Neal Gafter 现任微软架构师。曾任Google公司的软件工程师,还曾是Sun公司的资深工程师,领导了Java编译器的开发工作,并且实现了Java 1.4版至5.0版的许多语言特性。Gafter曾经是C++标准委员会的成员,他在Sun、Microtec Research和Texas Instruments公司时领导了C和C++编译器的开发工作。他拥有罗彻斯特大学计算机科学专业的博士学位。

目录

第1 章绪论    1
第2 章表达式之谜    5
谜题1:奇数性    5
谜题2:找零时刻    7
谜题3:长整除    9
谜题4:初级问题    11
谜题5:十六进制的趣事    13
谜题6:多重转型    15
谜题7:互换内容    17
谜题8:Dos Equis     19
谜题9:半斤    21
谜题10:八两    23
第3 章字符之谜    25
谜题11:最后的笑声    25
谜题12:ABC     27
谜题13:动物庄园    29
谜题14:转义字符的溃败  31
谜题15:令人晕头转向的Hello   33
谜题16:行打印程序    35
谜题17:嗯?     37
谜题18:字符串奶酪    39
谜题19:漂亮的火花(块注释符)  41
谜题20:我的类是什么    43
谜题21:我的类是什么?镜头2   45
谜题22:URL的愚弄    47
谜题23:不劳无获    49
第4 章循环之谜    53
谜题24:尽情享受每一个字节  53
谜题25:无情的增量操作  55
谜题26:在循环中  57
谜题27:变幻莫测的i值  59
谜题28:循环者  61
谜题29:循环者的新娘  63
谜题30:循环者的爱子  65
谜题31:循环者的鬼魂  67
谜题32:循环者的诅咒  69
谜题33:循环者遇到了狼人  .71
谜题34:被计数击倒了  73
谜题35:分钟计数器  .75
第5 章异常之谜    77
谜题36:优柔寡断  77
谜题37:极端不可思议  79
谜题38:不受欢迎的宾客  81
谜题39:您好,再见  .83
谜题40:不情愿的构造器  85
谜题41:字段和流  87
谜题42:异常为循环而抛  89
谜题43:异常地危险  93
谜题44:删除类  97
谜题45:令人疲惫不堪的测验  101
第6 章类之谜    105
谜题46:令人混淆的构造器案例  105
谜题47:啊呀!狸猫变犬子  .107
谜题48:我所得到的都是静态的  109
谜题49:比生命更大  .111
谜题50:不是你的类型  113
谜题51:要点何在  115
谜题52:总和的玩笑  .119
谜题53:做你的事吧  .123
谜题54:Null与Void   .125
谜题55:特创论  127
第7 章库之谜    131
谜题56:大问题    131
谜题57:名字里有什么    133
谜题58:产生它的散列码  137
谜题59:差是什么    139
谜题60:一行以毙之    141
谜题61:日期游戏    143
谜题62:名字游戏    145
谜题63:更多同样的问题  147
谜题64:按余数编组    149
谜题65:疑似排序的惊人传奇  152
第8 章更多类之谜    157
谜题66:一件私事    157
谜题67:对字符串上瘾    161
谜题68:灰色的阴影    163
谜题69:黑色的渐隐    165
谜题70:一揽子交易    167
谜题71:进口税    169
谜题72:终极危难    171
谜题73:隐私在公开    173
谜题74:同一性的危机    175
谜题75:头还是尾?     177
名字重用的术语表    180
第9 章更多库之谜    183
谜题76:乒乓    183
谜题77:乱锁之妖    185
谜题78:反射的影响    189
谜题79:狗狗的幸福生活  193
谜题80:更深层的反射    195
谜题81:无法识别的字符化  197
谜题82:啤酒爆炸    199
谜题83:诵读困难者的一神论  201
谜题84:戛然而止    203
谜题85:延迟初始化  205
第10 章高级谜题    209
谜题86:有害的括号垃圾  209
谜题87:紧张的关系  211
谜题88:原始类型的处理  213
谜题89:泛型迷药  217
谜题90:荒谬痛苦的超类  221
谜题91:序列杀手  224
谜题92:双绞线  229
谜题93:类的战争  231
谜题94:迷失在混乱中  233
谜题95:来份甜点  237
附录A 陷阱和缺陷的目录  239
A.1 词汇问题  240
A.2 整数运算  241
A.3 浮点运算  243
A.4 表达式计算  244
A.5 控制流    245
A.6 类初始化  246
A.7 实例的创建与销毁  246
A.8 其他与类和实例相关的主题  248
A.9 名字重用  249
A.10 字符串    251
A.11 I/O     252
A.12 线程    253
A.13 反射    255
A.14 序列化    255
A.15 其他库    257
附录B 书中幻图的注释  259
参考文献    265
索引    271

本文地址:https://www.codercto.com/books/d/411.html

CSS 压缩/解压工具

CSS 压缩/解压工具

在线压缩/解压 CSS 代码

XML 在线格式化

XML 在线格式化

在线 XML 格式化压缩工具

html转js在线工具

html转js在线工具

html转js在线工具