Effective Java

Front Cover
Addison-Wesley Professional, May 8, 2008 - Computers - 384 pages

Are you looking for a deeper understanding of the JavaTM programming language so that you can write code that is clearer, more correct, more robust, and more reusable? Look no further! Effective JavaTM, Second Edition, brings together seventy-eight indispensable programmer’s rules of thumb: working, best-practice solutions for the programming challenges you encounter every day.

This highly anticipated new edition of the classic, Jolt Award-winning work has been thoroughly updated to cover Java SE 5 and Java SE 6 features introduced since the first edition. Bloch explores new design patterns and language idioms, showing you how to make the most of features ranging from generics to enums, annotations to autoboxing.

Each chapter in the book consists of several “items” presented in the form of a short, standalone essay that provides specific advice, insight into Java platform subtleties, and outstanding code examples. The comprehensive descriptions and explanations for each item illuminate what to do, what not to do, and why.

Highlights include:

  • New coverage of generics, enums, annotations, autoboxing, the for-each loop, varargs, concurrency utilities, and much more
  • Updated techniques and best practices on classic topics, including objects, classes, libraries, methods, and serialization
  • How to avoid the traps and pitfalls of commonly misunderstood subtleties of the language
  • Focus on the language and its most fundamental libraries: java.lang, java.util, and, to a lesser extent, java.util.concurrent and java.io

Simply put, Effective JavaTM, Second Edition, presents the most practical, authoritative guidelines available for writing efficient, well-designed programs.

 

Contents

1 Introduction
1
2 Creating and Destroying Objects
5
3 Methods Common to All Objects
33
4 Classes and Interfaces
67
5 Generics
109
6 Enums and Annotations
147
7 Methods
181
8 General Programming
209
9 Exceptions
241
10 Concurrency
259
11 Serialization
289
Items Corresponding to First Edition
317
References
321
Index
327
Copyright

Other editions - View all

Common terms and phrases

About the author (2008)

Joshua Bloch is chief Java architect at Google and a Jolt Award winner. He was previously a distinguished engineer at Sun Microsystems and a senior systems designer at Transarc. Bloch led the design and implementation of numerous Java platform features, including JDK 5.0 language enhancements and the award-winning Java Collections Framework. He coauthored JavaTM Puzzlers (Addison-Wesley, 2005) and JavaTM Concurrency in Practice (Addison-Wesley, 2006).

Bibliographic information