Digital List Price: | CDN$ 54.99 |
Print List Price: | CDN$ 72.35 |
Kindle Price: | CDN$ 31.72 Save CDN$ 40.63 (56%) |
includes free international wireless delivery via Amazon Whispernet | |
Sold by: | Amazon.com.ca, Inc. |

Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet or computer – no Kindle device required. Learn more
Read instantly on your browser with Kindle for Web.
Using your mobile phone camera, scan the code below and download the Kindle app.
Effective Java 3rd Edition, Kindle Edition
Amazon Price | New from | Used from |
- Kindle Edition
$31.72 Read with Our Free App - Paperback
$40.50
The Definitive Guide to Java Platform Best Practices–Updated for Java 7, 8, and 9
Java has changed dramatically since the previous edition of Effective Java was published shortly after the release of Java 6. This Jolt award-winning classic has now been thoroughly updated to take full advantage of the latest language and library features. The support in modern Java for multiple paradigms increases the need for specific best-practices advice, and this book delivers.
As in previous editions, each chapter of Effective Java, Third Edition, consists of several “items,” each presented in the form of a short, stand-alone 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.
The third edition covers language and library features added in Java 7, 8, and 9, including the functional programming constructs that were added to its object-oriented roots. Many new items have been added, including a chapter devoted to lambdas and streams.
New coverage includes
- Functional interfaces, lambda expressions, method references, and streams
- Default and static methods in interfaces
- Type inference, including the diamond operator for generic types
- The @SafeVarargs annotation
- The try-with-resources statement
- New library features such as the Optional interface, java.time, and the convenience factory methods for collections
- ISBN-13978-0134685991
- Edition3rd
- PublisherAddison-Wesley Professional
- Publication dateDec 18 2017
- LanguageEnglish
- File size30966 KB
- Kindle (5th Generation)
- Kindle Keyboard
- Kindle DX
- Kindle (2nd Generation)
- Kindle (1st Generation)
- Kindle Paperwhite
- Kindle Paperwhite (5th Generation)
- Kindle Touch
- Kindle
- Kindle Oasis
- One advantage of static factory methods is that, unlike constructors, they have names.Highlighted by 684 Kindle readers
- A third advantage of static factory methods is that, unlike constructors, they can return an object of any subtype of their return type.Highlighted by 660 Kindle readers
- A second shortcoming of static factory methods is that they are hard for programmers to find.Highlighted by 387 Kindle readers
From the Publisher

The #1 Book on Java Programming, Most Recommended by Java Programmers
"The book is supremely readable: the style is concise and clear, and the code examples are short and to the point. As a result, Effective Java is a pleasant volume to read through from beginning to end—learning to refine your coding skills as you go. It is one of the very few books I recommend without reservation to all Java programmers who are past the beginner stage." — Andrew Binstock, Java Magazine
"Joshua Bloch does an amazing job explaining best practices and providing detailed insights into how and when to use the different Java features. Effective Java is a must-read for every professional Java developer." — Thorben Janssen
"I’ve been using Java for almost a year now and this book definitely enhanced my understanding on the language and how to use its features more efficiently." — Lucas Pavesi Da Cruz
Product description
About the Author
Product details
- ASIN : B078H61SCH
- Publisher : Addison-Wesley Professional; 3rd edition (Dec 18 2017)
- Language : English
- File size : 30966 KB
- Simultaneous device usage : Up to 5 simultaneous devices, per publisher limits
- Text-to-Speech : Enabled
- Screen Reader : Supported
- Enhanced typesetting : Enabled
- X-Ray : Not Enabled
- Word Wise : Not Enabled
- Sticky notes : On Kindle Scribe
- Print length : 414 pages
- Best Sellers Rank: #45,340 in Kindle Store (See Top 100 in Kindle Store)
- #2 in Java Programming (Kindle Store)
- #17 in Java Programming (Books)
- #97 in Programming Languages Textbooks
- Customer Reviews:
About the author

Joshua J. Bloch (born August 28, 1961) is a software engineer and a technology author, formerly employed at Sun Microsystems and Google. He led the design and implementation of numerous Java platform features, including the Java Collections Framework, the java.math package, and the assert mechanism. He is the author of the programming guide Effective Java (2001), which won the 2001 Jolt Award, and is a co-author of two other Java books, Java Puzzlers (2005) and Java Concurrency In Practice (2006).
Bloch holds a B.S. in computer science from Columbia University and a Ph.D. in computer science from Carnegie Mellon University. His 1990 thesis was titled A Practical Approach to Replication of Abstract Data Objects and was nominated for the ACM Distinguished Doctoral Dissertation Award.
Bloch has worked as a Senior Systems Designer at Transarc, and later as a Distinguished Engineer at Sun Microsystems. In June 2004 he left Sun and became Chief Java Architect at Google. On August 3, 2012, Bloch announced that he would be leaving Google.
In December 2004, Java Developer's Journal included Bloch in its list of the "Top 40 Software People in the World".
Bloch has proposed the extension of the Java programming language with two features: Concise Instance Creation Expressions (CICE) (coproposed with Bob Lee and Doug Lea) and Automatic Resource Management (ARM) blocks. The combination of CICE and ARM formed one of the three early proposals for adding support for closures to Java. ARM blocks were added to the language in JDK7.
Bloch is currently a faculty member of the Institute for Software Research at Carnegie Mellon University, where he holds the title "Professor of the Practice". In addition to his research, Bloch teaches coursework in Software Engineering.
Bio from Wikipedia, the free encyclopedia.
Customers who read this book also read
Customer reviews

Reviewed in Canada on September 11, 2021
-
Top reviews
Top reviews from Canada
There was a problem filtering reviews right now. Please try again later.
You might think "Fulfilled by Amazon" would mean something for quality control, then you are wrong. Many vendors take advantage of FBA to sell high-quality counterfeits by printing the pirated PDF ebooks that can be found online.
These PDF files of the book usually do not have a high-resolution cover page but have embedded text. Thus, you can see pixelized pictures and blurry printings on the cover page, but everything inside is impeccable.
On the copyright page, you may find only date stamps showing the printing batch ("1 17"). Considering that this is a super popular book published in late 2017, it is very unlikely that you get a "new" book of the first prints.
I guess a better idea is either pay about $10 more to buy it from Amazon.ca (seller and shipper) or just don't spend the money at all for an alternative way to get the book (and donate something to the author). Otherwise, chances are that you are supporting a shady business that is located in parts of North America, South Asia, and East Asia (less likely for this type of commerce partially because of the different languages and the fact that downloading PDF is a trend).
Remember those international textbooks printed in English?

Reviewed in Canada 🇨🇦 on September 11, 2021
You might think "Fulfilled by Amazon" would mean something for quality control, then you are wrong. Many vendors take advantage of FBA to sell high-quality counterfeits by printing the pirated PDF ebooks that can be found online.
These PDF files of the book usually do not have a high-resolution cover page but have embedded text. Thus, you can see pixelized pictures and blurry printings on the cover page, but everything inside is impeccable.
On the copyright page, you may find only date stamps showing the printing batch ("1 17"). Considering that this is a super popular book published in late 2017, it is very unlikely that you get a "new" book of the first prints.
I guess a better idea is either pay about $10 more to buy it from Amazon.ca (seller and shipper) or just don't spend the money at all for an alternative way to get the book (and donate something to the author). Otherwise, chances are that you are supporting a shady business that is located in parts of North America, South Asia, and East Asia (less likely for this type of commerce partially because of the different languages and the fact that downloading PDF is a trend).
Remember those international textbooks printed in English?



I liked the content of this book. Amazing book to learn from. However, I'm very disappointed with the print quality. Many of the texts are pixelated and makes it hard to read. Also, the text from the other side of the page is visible making it further hard to read.
There are also ink marks of different colours across some of the pages.
I wonder if there is another publication of this book where the print quality is better.

I liked the content of this book. Amazing book to learn from. However, I'm very disappointed with the print quality. Many of the texts are pixelated and makes it hard to read. Also, the text from the other side of the page is visible making it further hard to read.
There are also ink marks of different colours across some of the pages.
I wonder if there is another publication of this book where the print quality is better.



Top reviews from other countries

I'd recommend this to anyone who has an alright knowledge of Java and wants to take it to the next level. I'd nearly even recommend it to non Java developers.

This is a must-have for a Java enthusiast. You are missing out otherwise. Check out items 2, 18, 28, 31 and all of the items on concurrency (78-84) to get a good feel for the breadth and depth of knowledge covered. Everything else is just as good but those items stood out to me extra as a personal point of interest.

Generally read the book cover to cover once, now it sits on my desk as a reference as there will always be good tips to look up when writing or refactoring code.

I'm new to Java, having come from C++.
There are a few things in it which seen to make a leap of faith in your understanding. But generally it's pitched at the right level.