Effective Java

Effective Java

4.51 (7,231 ratings by Goodreads)
By (author) 

Free delivery worldwide

Available. Expected delivery to the United States in 8-13 business days.

Not ordering to the United States? Click here.


Since this Jolt-award winning classic was last updated in 2008, the Java programming environment has changed dramatically. Java 7 and Java 8 introduced new features and functions including, forEach() method in Iterable interface, default and static methods in Interfaces, Functional Interfaces and Lambda Expressions, Java Stream API for Bulk Data Operations on Collections, Java Time API, Collection API improvements, Concurrency API improvements, and Java IO improvements.

In this new edition of Effective Java, Bloch explores new design patterns and language idioms that have been introduced since the second edition was released in 2008 shortly after Java SE6, including Lambda, streams, generics and collections, as well as selected Java 9 features.

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

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
show more

Product details

  • Paperback | 416 pages
  • 185 x 231 x 23mm | 680g
  • Addison Wesley
  • Boston, United States
  • English
  • 3rd edition
  • 0134685997
  • 9780134685991
  • 11,824

Table of contents

Chapter 1: Introduction
Chapter 2: Creating and Destroying Objects
Chapter 3: Methods Common to All Objects
Chapter 4: Classes and Interfaces
Chapter 5: Generics
Chapter 6: Enums and Annotations
Chapter 7: Lambdas and Streams
Chapter 8: Methods
Chapter 9: General Programming
Chapter 10: Exceptions
Chapter 11: Concurrency
Chapter 12: Serialization
show more

About Joshua Bloch

Joshua Bloch is a professor at Carnegie Mellon University. He was formerly the chief Java architect at Google, a distinguished engineer at Sun Microsystems, and a senior systems designer at Transarc. He led the design and implementation of numerous Java platform features, including the JDK 5.0 language enhancements and the Java Collections Framework. He holds a Ph.D. in computer science from Carnegie Mellon University and a B.S. in computer science from Columbia University.
show more

Rating details

7,231 ratings
4.51 out of 5 stars
5 64% (4,600)
4 27% (1,925)
3 7% (529)
2 2% (123)
1 1% (54)
Book ratings by Goodreads
Goodreads is the world's largest site for readers with over 50 million reviews. We're featuring millions of their reader ratings on our book pages to help you find your new favourite book. Close X