作者:
Joshua Bloch
出版社: 机械工业出版社
原作名: Effective Java Second Edition
译者: 俞黎敏
出版年: 2009-1-1
页数: 287
定价: 52.00元
装帧: 平装
丛书: Sun公司核心技术丛书
ISBN: 9787111255833
出版社: 机械工业出版社
原作名: Effective Java Second Edition
译者: 俞黎敏
出版年: 2009-1-1
页数: 287
定价: 52.00元
装帧: 平装
丛书: Sun公司核心技术丛书
ISBN: 9787111255833
内容简介 · · · · · ·
本书介绍了在Java编程中78条极具实用价值的经验规则,这些经验规则涵盖了大多数开发人员每天所面临的问题的解决方案。通过对Java平台设计专家所使用的技术的全面描述,揭示了应该做什么,不应该做什么才能产生清晰、健壮和高效的代码。
本书中的每条规则都以简短、独立的小文章形式出现,并通过例子代码加以进一步说明。本书内容全面,结构清晰,讲解详细。可作为技术人员的参考用书。
Effective java 中文版(第2版)的创作者
· · · · · ·
-
Joshua Bloch 作者
作者简介 · · · · · ·
Joshua Bloch是Google公司的首席Java架构师。是Jolt大奖的获得者。他曾是Sun公司的杰出工程师,和Transarc公司的高级系统设计师。Bloch曾带领团队设计和实现过无数的Java平台特性,包括JDK 5.0语言增强版和获奖的Java Collections Framework。他的著作还包括:《Java Puzzlers》、《Java Concurrency in Practive》等。
目录 · · · · · ·
译者序
序
前言
致谢
第1章 引言
第2章 创建和销毁对象
第1条:考虑用静态工厂方法代替构造器
第2条:遇到多个构造器参数时要考虑用构建器
第3条:用私有构造器或者枚举类型强化Singleton属性
第4条:通过私有构造器强化不可实例化的能力
第5条:避免创建不必要的对象
第6条:消除过期的对象引用
第7条:避免使用终结方法
第3章 对于所有对象都通用的方法
第8条:覆盖equals时请遵守通用约定
第9条:覆盖equals时总要覆盖hashCode
第10条:始终要覆盖toString
第11条:谨慎地覆盖clone
第12条:考虑实现Comparable接口
第4章 类和接口
第13条:使类和成员的可访问性最小化
第14条:在公有类中使用访问方法而非公有域
第15条:使可变性最小化
第16条:复合优先于继承
第17条:要么为继承而设计,并提供文档说明,要么就禁止继承
第18条:接口优于抽象类
第19条:接口只用于定义类型
第20条:类层次优于标签类
第21条:用函数对象表示策略
第22条:优先考虑静态成员类
第5章 泛型
第23条:请不要在新代码中使用原生态类型
第24条:消除非受检警告
第25条:列表优先于数组
第26条:优先考虑泛型
第27条:优先考虑泛型方法
第28条:利用有限制通配符来提升API的灵活性
第29条:优先考虑类型安全的异构容器
第6章 枚举和注解
第30条:用enum代替int常量
第31条:用实例域代替序数
第32条:用EnumSet代替位域
第33条:用EnumMap代替序数索引
第34条:用接口模拟可伸缩的枚举
第35条:注解优先于命名模式
第36条:坚持使用Override注解
第37条:用标记接口定义类型
第7章 方法
第38条:检查参数的有效性
第39条:必要时进行保护性拷贝
第40条:谨慎设计方法签名
第41条:慎用重载
第42条:慎用可变参数
第43条:返回零长度的数组或者集合,而不是:null
第44条:为所有导出的API元素编写文档注释
第8章 通用程序设计
第45条:将局部变量的作用域最小化
第46条:for-each循环优先于传统的for循环
第47条:了解和使用类库
第48条:如果需要精确的答案,请避免使用float和double
第49条:基本类型优先于装箱基本类型
第50条:如果其他类型更适合,则尽量避免使用字符串
第51条:当心字符串连接的性能
第52条:通过接口引用对象
第53条:接口优先于反射机制
第54条:谨慎地使用本地方法
第55条:谨慎地进行优化
第56条:遵守普遍接受的命名惯例
第9章 异常
第57条:只针对异常的情况才使用异常
第58条:对可恢复的情况使用受检异常,对编程错误使用运行时异常
第59条:避免不必要地使用受检的异常
第60条:优先使用标准的异常
第61条:抛出与抽象相对应的异常
第62条:每个方法抛出的异常都要有文档
第63条:在细节消息中包含能捕获失败的信息
第64条:努力使失败保持原子性
第65条:不要忽略异常
第10章 并发
第66条:同步访问共享的可变数据
第67条:避免过度同步
第68条:executor和task优先干线程
第69条:并发工具优先于wait和notify
第70条:线程安全性的文档化
第71条:慎用延迟初始化
第72条:不要依赖于线程调度器
第73条:避免使用线程组
第11章 序列化
第74条:谨慎地实现Serializable接口
第75条:考虑使用自定义的序列化形式
第76条:保护性地编写readObject方法
第77条:对于实例控制,枚举类型优先于readResolve
第78条:考虑用序列化代理代替序列化实例
附录 第1版与第2版条目对照
中英文术语对照
参考文献
· · · · · · (收起)
序
前言
致谢
第1章 引言
第2章 创建和销毁对象
第1条:考虑用静态工厂方法代替构造器
第2条:遇到多个构造器参数时要考虑用构建器
第3条:用私有构造器或者枚举类型强化Singleton属性
第4条:通过私有构造器强化不可实例化的能力
第5条:避免创建不必要的对象
第6条:消除过期的对象引用
第7条:避免使用终结方法
第3章 对于所有对象都通用的方法
第8条:覆盖equals时请遵守通用约定
第9条:覆盖equals时总要覆盖hashCode
第10条:始终要覆盖toString
第11条:谨慎地覆盖clone
第12条:考虑实现Comparable接口
第4章 类和接口
第13条:使类和成员的可访问性最小化
第14条:在公有类中使用访问方法而非公有域
第15条:使可变性最小化
第16条:复合优先于继承
第17条:要么为继承而设计,并提供文档说明,要么就禁止继承
第18条:接口优于抽象类
第19条:接口只用于定义类型
第20条:类层次优于标签类
第21条:用函数对象表示策略
第22条:优先考虑静态成员类
第5章 泛型
第23条:请不要在新代码中使用原生态类型
第24条:消除非受检警告
第25条:列表优先于数组
第26条:优先考虑泛型
第27条:优先考虑泛型方法
第28条:利用有限制通配符来提升API的灵活性
第29条:优先考虑类型安全的异构容器
第6章 枚举和注解
第30条:用enum代替int常量
第31条:用实例域代替序数
第32条:用EnumSet代替位域
第33条:用EnumMap代替序数索引
第34条:用接口模拟可伸缩的枚举
第35条:注解优先于命名模式
第36条:坚持使用Override注解
第37条:用标记接口定义类型
第7章 方法
第38条:检查参数的有效性
第39条:必要时进行保护性拷贝
第40条:谨慎设计方法签名
第41条:慎用重载
第42条:慎用可变参数
第43条:返回零长度的数组或者集合,而不是:null
第44条:为所有导出的API元素编写文档注释
第8章 通用程序设计
第45条:将局部变量的作用域最小化
第46条:for-each循环优先于传统的for循环
第47条:了解和使用类库
第48条:如果需要精确的答案,请避免使用float和double
第49条:基本类型优先于装箱基本类型
第50条:如果其他类型更适合,则尽量避免使用字符串
第51条:当心字符串连接的性能
第52条:通过接口引用对象
第53条:接口优先于反射机制
第54条:谨慎地使用本地方法
第55条:谨慎地进行优化
第56条:遵守普遍接受的命名惯例
第9章 异常
第57条:只针对异常的情况才使用异常
第58条:对可恢复的情况使用受检异常,对编程错误使用运行时异常
第59条:避免不必要地使用受检的异常
第60条:优先使用标准的异常
第61条:抛出与抽象相对应的异常
第62条:每个方法抛出的异常都要有文档
第63条:在细节消息中包含能捕获失败的信息
第64条:努力使失败保持原子性
第65条:不要忽略异常
第10章 并发
第66条:同步访问共享的可变数据
第67条:避免过度同步
第68条:executor和task优先干线程
第69条:并发工具优先于wait和notify
第70条:线程安全性的文档化
第71条:慎用延迟初始化
第72条:不要依赖于线程调度器
第73条:避免使用线程组
第11章 序列化
第74条:谨慎地实现Serializable接口
第75条:考虑使用自定义的序列化形式
第76条:保护性地编写readObject方法
第77条:对于实例控制,枚举类型优先于readResolve
第78条:考虑用序列化代理代替序列化实例
附录 第1版与第2版条目对照
中英文术语对照
参考文献
· · · · · · (收起)
丛书信息
· · · · · ·
Sun公司核心技术丛书(共38册),
这套丛书还有
《Java 实时编程》《JAVA2核心技术,卷II》《Sun Cluster 3.0企业解决方案》《Solaris系统编程》《EJB锦囊妙技》
等
。
喜欢读"Effective java 中文版(第2版)"的人也喜欢的电子书 · · · · · ·
支持 Web、iPhone、iPad、Android 阅读器
喜欢读"Effective java 中文版(第2版)"的人也喜欢 · · · · · ·
- Java编程思想 (第4版) 9.1
- 深入理解Java虚拟机(第2版) 9.1
- 编程珠玑 9.1
- 代码大全(第2版) 9.3
- JAVA 2核心技术 卷Ⅰ 8.8
- 设计模式 9.0
- 重构 9.0
- UNIX环境高级编程 9.4
Effective java 中文版(第2版)的书评 · · · · · · ( 全部 68 条 )
看书前不建议直接看评论
对于一本好书的评判是由自己决定的。在没看书之前就先看别人怎么议论这本书,你心里就会产生偏差。特别是你买了之后,回过头来看评论,看到那些差评,你是否会产生芥蒂。那这本书看还是不看。 对这本书的翻译问题大多数都是吐槽的。但是只限于吐槽,让别人心生厌恶罢了。如果真...
(展开)
Effective Java中文第三版 读后感
这篇书评可能有关键情节透露
Effective Java中文第三版, 本书上一个版本还是2008年的事情,时光荏苒,在前行的道路上Java与我们一路相伴,中间各种新特性已经层出不穷,让我们目不暇接,但从学习java的角度来说夯实基础才是最总要的,这本书就是为有了一定java基础的同学准备的,里面提炼了90多项条款共大... (展开)> 更多书评 68篇
论坛 · · · · · ·
java100套毕设 链接:https://pan.baidu.com/s/1R9... | 来自冰雨 | 2018-10-24 14:35:56 | |
Effective Java Second Edition中文版勘误列表专用贴 | 来自YuLimin | 2 回应 | 2016-02-08 14:24:02 |
极品 | 来自半兽人 | 2010-11-03 09:43:57 | |
即使看过第一版也值得再看第二版 | 来自我有分寸 | 2010-10-25 22:31:15 | |
如何写出符合Java特性的代码?如何写出符合英语特... | 来自Bourne | 1 回应 | 2010-08-23 00:25:10 |
> 浏览更多话题
这本书的其他版本 · · · · · · ( 全部15 )
-
Addison-Wesley (2008)9.3分 283人读过
-
机械工业出版社 (2003)8.9分 1092人读过
-
机械工业出版社 (2018)8.8分 411人读过
-
Addison-Wesley Professional (2018)9.7分 186人读过
以下书单推荐 · · · · · · ( 全部 )
- 书单 | 千评9分书 (Sheryl)
- 豆瓣评分>9的计算机图书 (whg)
- 闲着没事读读书(四) (鹿小羽)
- Java修炼之道 (在坡华子)
- 交互设计师养成书单 (LimboMinaïss)
谁读这本书? · · · · · ·
二手市场
· · · · · ·
订阅关于Effective java 中文版(第2版)的评论:
feed: rss 2.0
2 有用 corpsefire 2009-05-18 16:22:50
翻译错误很多
28 有用 机动美少年高興 2014-05-31 11:28:35
能把 pop 和 push 搞反、把 生产者 和 消费者 搞反,这已经不是翻译质量的问题了好伐,这是根本就没有用心。原作赛高,中文版 sucks!
3 有用 谐音太郎 2018-03-09 09:59:33
重新开始读,觉得翻译太烂了。。。
0 有用 jason 2011-11-01 15:16:14
用了近两个整天较仔细的读完了这本书,感觉尤其是新手都应该把这本书读一遍吧。
0 有用 阿丹 2009-04-28 22:20:30
感谢司令赠书
0 有用 葡萄干蔓越莓 2023-12-17 21:34:02 上海
目前水平还是不够啊,并不能真正理解,能看懂,但体会不深。工作后再来看吧
0 有用 小时候胖 2023-07-14 19:13:35 上海
简言之就是告诉你使用Java过程中的各种坑,早晚会遇到,可能是几天后,几个月后,或者几年后
0 有用 黄浦Brahms 2022-12-28 21:50:59 上海
比较深
0 有用 Siq 2022-10-16 14:19:48 广东
圖書質量較差。內容可以!
0 有用 shakespace 2022-10-07 23:43:10 上海
从没看过这么可怕的译文版……译者的语文水平真的很差…… 生产者消费者都搞反,与示例代码矛盾都没校对出来…… 把flexible翻译成可伸缩也是挺高级,又不是在讲UI布局…… 建议看原版或者网上的中英对照版。