We dove into the data from the O'Reilly online learning platform to identify the most-used Java resources. These are the items our members regularly turn to as they apply Java in their projects and organizations.
Effective Java, 3rd Edition — Joshua Bloch 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.
Head First Java, 2nd Edition — Bert Bates and Kathy Sierra offer a complete introduction to object-oriented programming and Java.
Java: The Complete Reference, 11th Edition — Herbert Schildt covers the entire Java language, including its syntax, keywords, and fundamental programming principles. You’ll also find information on key portions of the Java API library.
Core Java Volume I—Fundamentals, 11th Edition — Cay Horstmann offers in-depth coverage of fundamental Java and UI programming, including objects, generics, collections, lambda expressions, Swing design, concurrency, and functional programming.
Java Concurrency in Practice — This book arms readers with both the theoretical underpinnings and concrete techniques for building reliable, scalable, maintainable concurrent applications.
Modern Java in Action — Mario Fusco, Alan Mycroft, and Raoul-Gabriel Urma connect new features of the Java language with their practical applications using crystal-clear examples and careful attention to detail.
Java How to Program, Early Objects, 11th Edition — Harvey Deitel and Paul Deitel present updated coverage of Java SE 8 and new Java SE 9 capabilities, including JShell, the Java Module System, and other key Java 9 topics.
Java in a Nutshell, 7th Edition — David Flanagan and Ben Evans demonstrate how to take complete advantage of modern Java APIs and development best practices, and include new material on Java Concurrency Utilities.
Optimizing Java — Chris Newland, James Gough, and Benjamin Evans teach you how to tune Java applications for performance using a quantitative, verifiable approach.
Cloud Native Java — Josh Long and Kenny Bastani show Java/JVM developers how to build better software, faster, using Spring Boot, Spring Cloud, and Cloud Foundry.