Top 10 Books For Advanced Level Java Developers

Java is one of the most popular programming language nowadays. There are plenty of books for beginners. But to those who have programmed with Java for a while, some of them may look redundant. However, advanced Java books are not always right at hand, not partially because they require more skills, experienced, and deep thinkers to write.

This post provides a book list for experienced Java developers. Books like "Thinking in Java" or "Head First Java" won't be listed although they are very good for beginners.

Effective Java


This book is really only for deeper understanding Java developer. It brings together seventy-eight indispensable programmer’s rules of thumb: working, best-practice solutions for the programming challenges you encounter every day.

The elements of Java style

It is directed at anyone who writes Java code, by furnishing a set of rules for Java practitioners, by offering a collection of standards, conventions, and guidelines for writing solid Java code, and by illustrating how to write solid Java code that will be easy to understand, maintain, and enhance.

Java Concurrency in Practice

java concurrency

This is one of the hardest things to get right.

Programming Pearls

Programming Pearls is a very good book discussing how to think and solve problem as a programmer.

Patterns of Enterprise Application Architecture


You may have learned design patterns, but not sure how they are used in enterprise frameworks. This book explains common enterprise design patterns.

Refactoring: Improving the Design of Existing Code


If you have programmed for years, you will find this book definitely worth to read. Refactoring can make code more readable and easier to maintain.

OSGi in Action: Creating Modular Applications in Java


For more or less, it is good to know service oriented programming. The first several chapters of this book can give you a nice introduction and concrete examples.

Clean Code: A Handbook of Agile Software Craftsmanship


Last but not least, it is always good to review your coding style. 90% of effort will be spent on maintenance, it is extremely important to make clean code.

Algorithm in Java

A little advertisement for myself. This book is a collection of popular algorithm questions from ProgramCreek. Download Link.

There are other good books for advanced Java developers. If you think any other book should be here, please leave your comment. I will combine them later here.

Category >> Java >> Top 10  
If you want someone to read your code, please put the code inside <pre><code> and </code></pre> tags. For example:
String foo = "bar";
  • Hacker

    yes you are right bro

  • I see you don’t monetize your page, don’t waste your traffic, you can earn extra bucks every month because you’ve got
    hi quality content. If you want to know how to make extra bucks, search for: best adsense alternative
    Wrastain’s tools

  • Oleksandr Alesinskyy

    “Effective Java” – for intermediate level developers.
    “Refactoring: Improving the Design of Existing Code” – as above.
    “Patterns of Enterprise Application Architecture” – for trash can.

    “Java puzzlers”

    In doubt
    “Design patterns: elements of reusable object-oriented software” – good book, but strictly speaking, not Java-specific.

  • Isaac Carter

    “Java Generics and Collections” from O’Reilly is a great book that every advanced Java developer needs to read.

  • It’s here in my collection of top 9 Java books 🙂

  • I think this list definitely need a book on JVM internals and Performance tuning, that’s the one area which separates advanced Java programmer to others. The best one I can think of is “Java Performance the definitive guide by Scott Oaks”. If you need more than one book, You can my list of Java books

  • hello

    above all these , i would recommend “java- black book ” by kogent solutions..
    its just an awwwwwwesome book to learn java whoever you are like beginner, advanced level etc. i love tat book to the coooooooore……

  • jai

    For java tutorials visit:

  • Farooque

    Do you have any plans learning english?? hahaaaa…:)

  • 海竹

    In this post, I would like to share my experience with only advanced level of Java, which means books like “Thinking in Java” or “Head First Java” won’t be listed although they are very good for beginners. ——这里不是有说明么,虽然不知道为什么。

  • 都有中文版。但是,怎么没有《thinking in java》呢?

  • flyme

    maybe the author think it’s not advanced

  • chrishardy

    why 10?not 9 or 11?

  • come_on_now

    How great !

  • Aaron Wen

    I will recommanded some books like:Programming Pearls, On top of Tides.
    I think not only read the book that is program skill, but also make eyes to large.

  • Aaron Wen

    I just have readed

  • David Karr

    Uh, I don’t see how I missed that. Never mind.

  • wang

    The second book,isn’t it ?

  • xiangxm

    where is the thinking in java?

  • ypeng

    great mind thinks alike 🙂

  • ypeng

    the second one is right “Effective Java”. 🙂

  • Java Developer

    “Head first” is also a good book to learn java programming language.

  • David Karr

    Seriously, a top 10 list of Java books that doesn’t mention “Effective Java” by Joshua Bloch?

  • Barista

    Nice list of books. It’s very similar with mine. Have a look