基本信息 书名:Effective Java:英文版 定价:65元 作者:(美)Joshua Bloch(约书亚·布洛赫) 著 出版社:电子工业出版社 出版日期:2016-03-01 ISBN:9787121273148 字数:432000 页码:368 版次:2 装帧:平装 开本:16开 商品重量: 编辑推荐 《Effective Java(第2版)(英文版)》内容全面,结构清晰,讲解详细,可作为技术人员的参考用书。 内容提要 本书通过78个有效案例,旨在帮助读者深入理解Java,以写出更加清楚、健壮、可重复使用的代码。书中每个章节均包含小论文,针对Java平台和杰出的代码样例,提供了具体的分析和建议,这些综合的描述和解释为程序员们明确指出了做什么、不做什么以及为什么这样。 目录 推荐序前言1 Introduction2 Creating and Destroying ObjectsItem 1: Consider static factory methods instead of constructorsItem 2: Consider a builder when faced with many constructor parameters Item 3: Enforce the singleton property with a private constructor or an enum type Item 4: Enforce noninstantiability with a private constructor Item 5: Avoid creating unnecessary objects Item 6: Eliminate obsolete object referencesItem 7: Avoid finalizers3 Methods Common to All ObjectsItem 8: Obey the general contract when overriding equals Item 9: Always override hashCode when you override equals Item 10: Always override toString Item 11: Override clone judiciouslyItem 12: Consider implementing Comparable 4 Classes and InterfacesItem 13: Minimize the accessibility of classes and membersItem 14: In public classes, use accessor methods, not public fields Item 15: Minimize mutabilityItem 16: Favor composition over inheritanceItem 17: Design and document for inheritance or else prohibit it Item 18: Prefer interfaces to abstract classes Item 19: Use interfaces only to define typesItem 20: Prefer class hierarchies to tagged classesItem 21: Use function objects to represent strategies Item 22: Favor static member classes over nonstatic 5 Generics Item 23: Don’t use raw types in new code Item 24: Eliminate unchecked warningsItem 25: Prefer lists to arrays Item 26: Favor generic typesItem 27: Favor generic methods Item 28: Use bounded wildcards to increase API flebility Item 29: Consider typesafe heterogeneous containers 6 Enums and Annotations Item 30: Use enums instead of int constantsItem 31: Use instance fields instead of ordinals Item 32: Use EnumSet instead of bit fieldsItem 33: Use EnumMap instead of ordinal indengItem 34: Emulate extensible enums with interfaces Item 35: Prefer annotations to naming patterns Item 36: Consistently use the Override annotationItem 37: Use marker interfaces to define types 7 Methods Item 38: Check parameters for validity Item 39: Make defensive copies when needed Item 40: Design method signatures carefullyItem 41: Use overloading judiciouslyItem 42: Use varargs judiciouslyItem 43: Return empty arrays or collections, not nulls Item 44: Write doc comments for all exposed API elements 8 General Programming Item 45: Minimize the scope of local variablesItem 46: Prefer for-each loops to traditional for loopsItem 47: Know and use the libraries Item 48: Avoid float and double if exact answers are required Item 49: Prefer primitive types to boxed primitives Item 50: Avoid strings where other types are more appropriate Item 51: Beware the performance of string concatenation Item 52: Refer to objects by their interfaces Item 53: Prefer interfaces to reflection Item 54: Use native methods judiciouslyItem 55: Optimize judiciously Item 56: Adhere to generally accepted naming conventions9 Exceptions Item 57: Use exceptions only for exceptional conditions Item 58: Use checked exceptions for recoverable conditions and runtime exceptions for programming errorsItem 59: Avoid unnecessary use of checked exceptions Item 60: Favor the use of standard exceptionsItem 61: Throw exceptions appropriate to the abstractionItem 62: Document all exceptions thrown by each methodItem 63: Include failure-capture information in detail messages Item 64: Strive for failure atomicity Item 65: Don’t ignore exceptions 10 ConcurrencyItem 66: Synchronize access to shared mutable dataItem 67: Avoid excessive synchronization Item 68: Prefer executors and tasks to threadsItem 69: Prefer concurrency utilities to wait and notify Item 70: Document thread safety Item 71: Use lazy initialization judiciously Item 72: Don’t depend on the thread scheduler Item 73: Avoid thread groups11 SerializationItem 74: Implement Serializable judiciouslyItem 75: Consider using a custom serialized form Item 76: Write readObject methods defensively Item 77: For instance control, prefer enum types to readResolve Item 78: Consider serialization proes instead of seri 作者介绍 作者:(美)Joshua Bloch(约书亚·布洛赫) 译者:无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无无 序言
以下为对购买帮助不大的评价