Start reading Effective Java (2nd Edition) (Java Series) on the free Kindle Reading App or on your Kindle in under a minute. Don't have a Kindle? Get your Kindle here.
This title is not currently available for purchase
Sorry, this item is not available in
Image not available for
Color:
Image not available
 

Effective Java (2nd Edition) (Java Series) [Kindle Edition]

Joshua Bloch
4.8 out of 5 stars  See all reviews (203 customer reviews)

Pricing information not available.

Free Kindle Reading App Anybody can read Kindle books—even without a Kindle device—with the FREE Kindle app for smartphones, tablets and computers.

To get the free app, enter your email address or mobile phone number.

Formats

Amazon Price New from Used from
Kindle Edition $31.72  
Paperback $38.66  
Unknown Binding --  
Kindle Delivers
Kindle Delivers
Subscribe to the Kindle Delivers monthly e-mail to find out about each month's Kindle book deals, new releases, editors' picks and more. Learn more (U.S. customers only)
There is a newer edition of this item:
Effective Java (2nd Edition) (Java Series) Effective Java (2nd Edition) (Java Series) 4.8 out of 5 stars (203)
$31.72
Available for download now.

Book Description

Are you looking for a deeper understanding of the Java™ programming language so that you can write code that is clearer, more correct, more robust, and more reusable? Look no further! Effective Java™, 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 Java™, Second Edition, presents the most practical, authoritative guidelines available for writing efficient, well-designed programs.



Editorial Reviews

Review

Raves for the First Edition!

 

“I sure wish I had this book ten years ago. Some might think that I don’t need any Java books, but I need this one.”

—James Gosling, fellow and vice president, Sun Microsystems, Inc.

 

“An excellent book, crammed with good advice on using the Java programming language and object-oriented programming in general.”

—Gilad Bracha, coauthor of The Java™ Language Specification, Third Edition

 

“10/10—anyone aspiring to write good Java code that others will appreciate reading and maintaining should be required to own a copy of this book. This is one of those rare books where the information won’t become obsolete with subsequent releases of the JDK library.”
—Peter Tran, bartender, JavaRanch.com

 

“The best Java book yet written.... Really great; very readable and eminently useful. I can’t say enough good things about this book. At JavaOne 2001, James Gosling said, ‘Go buy this book!’ I’m glad I did, and I couldn’t agree more.”
—Keith Edwards, senior member of research staff, Computer Science Lab at the Palo Alto Research Center (PARC), and author of Core JINI (Prentice Hall, 2000)

 

“This is a truly excellent book done by the guy who designed several of the better recent Java platform APIs (including the Collections API).”
—James Clark, technical lead of the XML Working Group during the creation of the XML 1.0 Recommendation, editor of the XPath and XSLT Recommendations

 

“Great content. Analogous to Scott Meyers’ classic Effective C++. If you know the basics of Java, this has to be your next book.”
—Gary K. Evans, OO mentor and consultant, Evanetics, Inc

 

“Josh Bloch gives great insight into best practices that really can only be discovered after years of study and experience.”
—Mark Mascolino, software engineer

 

“This is a superb book. It clearly covers many of the language/platform subtleties and trickery you need to learn to become a real Java master.”
—Victor Wiewiorowski, vice president development and code quality manager, ValueCommerce Co., Tokyo, Japan

 

“I like books that under-promise in their titles and over-deliver in their contents. This book has 57 items of programming advice that are well chosen. Each item reveals a clear, deep grasp of the language. Each one illustrates in simple, practical terms the limits of programming on intuition alone, or taking the most direct path to a solution without fully understanding what the language offers.”

—Michael Ernest, Inkling Research, Inc.

 

“I don’t find many programming books that make me want to read every page—this is one of them.”
—Matt Tucker, chief technical officer, Jive Software

 

“Great how-to resource for the experienced developer.”
—John Zukowski, author of numerous Java technology books

 

“I picked this book up two weeks ago and can safely say I learned more about the Java language in three days of reading than I did in three months of study! An excellent book and a welcome addition to my Java library.”
—Jane Griscti, I/T advisory specialist

From the Back Cover

Are you looking for a deeper understanding of the Java(tm) programming language so that you can write code that is clearer, more correct, more robust, and more reusable? Look no further!Effective Java(tm), 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 Java(tm), Second Edition,presents the most practical, authoritative guidelines available for writing efficient, well-designed programs.

See all Editorial Reviews

Product Details

  • File Size: 1318 KB
  • Print Length: 374 pages
  • Page Numbers Source ISBN: 0321356683
  • Simultaneous Device Usage: Up to 5 simultaneous devices, per publisher limits
  • Publisher: Addison-Wesley Professional; 2 edition (May 8, 2008)
  • Language: English
  • ASIN: B000WJOUPA
  • Text-to-Speech: Enabled
  • X-Ray:
  • Word Wise: Not Enabled
  • Lending: Not Enabled
  • Amazon Best Sellers Rank: #317,599 Paid in Kindle Store (See Top 100 Paid in Kindle Store)
  •  Would you like to give feedback on images?


Customer Reviews

4.8 out of 5 stars
(203)
4.8 out of 5 stars
Share your thoughts with other customers
Most Helpful Customer Reviews
93 of 97 people found the following review helpful
5.0 out of 5 stars A powerful update to an already-classic title May 16, 2008
Format:Paperback
Please see my review of the first edition for my general response. My opinion hasn't changed with the second, so I'll focus on what's new in this review.

The second edition was well worth the wait. The number of items are beefed up to 78 from 57. The chapter "Substitutes for C Constructs" is gone, but replaced by more contemporary material on "Generics" and "Enums and Annotations." Some first edition items have been amended to address features new to Java since the first edition was released. Some new items also address concurrency, favoring it over traditional Java threads. As expected, the cases for each item are methodically and persuaisvely made. If you are particularly interested in concurrency, also consider Java Concurrency in Practice.

The item discussions use boldface liberally to highlight key points, sometimes calling attention to arguments in the first edition that have been updated. If you're skimming -- the author in fact doesn't encourage cover-to-cover reading -- these highlights are useful attractors to important material you might otherwise gloss.

It's often helpful to have practices or insights you've earned on your own backed up by a reputable authority. Effective Java certainly helps with that. More importantly, the arguments that support his items are clear, easy to read, and compelling. Anyone proficient with Java would have to go a long way to find fault with them. In fact, it took considerable investigation to determine that one item from the first edition -- "Provide a readResolve method when necessary" -- was not the best advice for some cases. Bloch addresses that issue head-on in this edition, and provides its replacement ("For instance control, prefer enum types to readResolve").

As with the first edition, this one is a necessity for any serious Java developer.
Was this review helpful to you?
60 of 65 people found the following review helpful
5.0 out of 5 stars Simply a great book! June 30, 2008
Format:Paperback
Effective Java, Second Edition by Joshua Bloch is certainly the best Java book I have read in a long time. As a disclaimer, I never read the first edition and I am thus unable to compare the two editions. Effective Java, Second Edition is a mostly easy and fun read providing you with many insights and best practices on how to use Java effectively. It certainly is not a book for the beginner just starting out learning Java. For that purpose you may want to take a look at Thinking in Java by Bruce Eckel instead. Nevertheless, Effective Java would serve as an excellent follow-up.

In Effective Java, Joshua Bloch does a great job describing best practices that you as developer will find useful on a daily basis. For example, I really found his description of the builder pattern (Item 2, page 11) quite interesting. Another Item that fascinated me, was Item 15 (page 73) - "Minimize mutability". Both items are part of a broader theme throughout the book that promotes creating code that is as immutable as possible. In that regard, reading the book will enable you to simply write better and safer code. The book also leads the way towards promoting functional programming techniques which will come in quite handily when developing multithreaded applications. Therefore, as a next book I may recommend reading Java Concurrency in Practice by Brian Goetz.

Even for the experienced Java developer, Effective Java contains quite a few little eye openers. I for example was previously unaware of how static factory methods can simplify the creation of parameterized type instances using "type inference". This is described on page 9 (Item 1).
Read more ›
Was this review helpful to you?
97 of 109 people found the following review helpful
4.0 out of 5 stars Good, but not all items are equal May 12, 2010
Format:Paperback
If you want to know the good things about this book, read the other reviews, many of which I agree with. This review just states what makes the book 4 stars for me instead of 5, because none of the other reviews I read pointed them out.

Most of the items in book are very good, a few are great and well worth the price of the book and the time it takes to read it, but some have to be taken with a grain of salt. They probably make sense if you come from the background of working on the Java API team, as the author does, but wouldn't make much sense on any of the projects I have worked on. The problem is that all are presented as universal truths and only through experience can you tell which truly are and which can be ignored.

I also feel that some of the items need to be tempered with just plain practical usefulness. I know that programming a certain way makes the code bullet proof from certain errors by not compiling if those errors are introduced, but if the code is quite a bit harder to understand and those errors are rare, is it really worth it? Also, some of the items are written as if everything you are writing is being published and supported publicly. If code and interfaces are just being used between two teams within the company, or even just on a single team, some of the logic used to describe why items are important don't make as much sense. Again, I just feel that these are something that make complete sense if you are writing on the API team, but not necessarily in every other case.

My final small complaint is that the author tends to be a bit wordy on some of the items, fully explaining out every nuance of the wrong way to do it, which tends to create noise in some explanations that are pretty heavy anyway.
Read more ›
Was this review helpful to you?
Most Recent Customer Reviews
5.0 out of 5 stars Five Stars
As brand new as is gets.
Published 8 hours ago by DEVEN M PANCHAL
5.0 out of 5 stars You will gain a solid understanding of Java as well as best practices...
If you study this book and take your time in understanding all the topics, you can comfortably consider yourself an Expert in Java. Read more
Published 15 days ago by Taz
5.0 out of 5 stars Great Helper
Great Helper
Published 22 days ago by Arnav K
5.0 out of 5 stars Great book with effective coverage of not the science but ...
Great book with effective coverage of not the science but also the art of programming in many ways.
Most of the other books talk about the mechanics, but this book shows or... Read more
Published 24 days ago by Ivytry
5.0 out of 5 stars Truly the essential Java book
Once you pass the introductory stages of learning the basics of Java programming, this is the book to get if you want to become, as the title implies, effective. Read more
Published 1 month ago by Product Customer
5.0 out of 5 stars Five Stars
Simply a masterpiece in Java programming. Every Java developer should read this book.
Published 1 month ago by Mohammad Abuomar
5.0 out of 5 stars Recommended
I started to reread the first edition then decided I should just buy this second edition. It is as excellent as the first but with much more coverage. Read more
Published 1 month ago by David Hall
5.0 out of 5 stars Great book
Since I read this book, my Java programs are neater, more concise, easier to debug and often more efficient because of the practices it teaches. Read more
Published 1 month ago by Matthew
5.0 out of 5 stars Five Stars
The best Java book out there.
Published 2 months ago by Michael Nicosia
5.0 out of 5 stars Every Java developer should read this
I appreciate the straightforward nature of the author. The tips are very practical and within the first 15 minutes of reading the book I learned some new ways to help make my code... Read more
Published 2 months ago by A. Davis
Search Customer Reviews

More About the Author

Discover books, learn about writers, read author blogs, and more.

What Other Items Do Customers Buy After Viewing This Item?


Forums

Search Customer Discussions
Search all Amazon discussions

Topic From this Discussion
Are Developper books usable on Kindle
From what I've herd, not really. An iPad/ DX would probably be better, but you're best bet would be a good, old-fashion, paper-bound. It's hard to do the reference necessary when you can't flip through pages quickly.
Jun 2, 2011 by Savetheearth77 |  See all 2 posts
3rd edition? Be the first to reply
Start a new discussion
Topic:
First post:
Prompts for sign-in
 



Look for Similar Items by Category