Java is very crucial software language. A proper guideline is must while learning and only best books can provide you good guidelines. Here are few books for experienced developers.
Thinking in Java: “Thinking in Java” is an excellent book written by Bruce Eckel. It was award winning book specially meant for those who need to migrate from other languages like C++ to Java. This book updates the reader with the latest features of Java 2. It pays a huge attention to object design and covering various APIs in Java 2. Java I/O classes, polymorphism, inheritance are illustrated very briefly.
Java Concurrency in Practice: This book is written by Brian Goetz, Tim Peirels and their team. One can become master by refereeing this book. It covers fundamental of thread safety and concurrency, the use of concurrency blocks in Java, techniques in creating and composing classes that are thread safe. This book also deals with the dos and don’ts of performance optimization, advanced topics like non blocking algorithms, testing of concurrent programs, atomic variables and memory model in Java. Threads are a most significant part of Java and this concept is completely briefed in Java concurrency in Practice book.