This updated edition of the Nutshell guide not only helps experienced Java programmers get the most out of versions through Java 17, it also serves as a learning path for new developers. Chock-full of examples that demonstrate how to take complete advantage of modern Java APIs and development best practices, this thoroughly revised book includes new material on recent enhancements to the Java object model that every developer should know about.The first section provides a fast-paced, no-fluff introduction to the Java programming language and the core runtime aspects of the Java platform. The second section is a reference to core concepts and APIs that explains how to perform real programming work in the Java environment.Get up to speed on language details through Java 17Learn object-oriented programming using basic Java syntaxExplore generics, enumerations, annotations, and lambda expressionsUnderstand techniques used in object-oriented designExamine how concurrency and memory are intertwinedWork with Java collections and handle common data formatsDelve into Java's latest I/O APIs including asynchronous channelsBecome familiar with development tools in OpenJDK