Direct from the creators of the Java(TM) programming language, the completely revised fourth edition of The Java(TM) Programming Language is an indispensable resource for novice and advanced programmers alike. Developers around the world have used previous editions to quickly gain a deep understanding of the Java programming language, its design goals, and how to use it most effectively in real-world development. Now, Ken Arnold, James Gosling, and David Holmes have updated this classic to reflect the major enhancements in Java(TM) 2 Standard Edition 5.0 (J2SE(TM) 5.0). The authors systematically cover most classes in Java's main packages, java.lang.*, java.util, and java.io, presenting in-depth explanations of why these classes work as they do, with informative examples. Several new chapters and major sections have been added, and every chapter has been updated to reflect today's best practices for building robust, efficient, and maintainable Java software. Key changes in this edition include * New chapters on generics, enums, and annotations, the most powerful new language features introduced in J2SE 5.0 * Changes to classes and methods throughout to reflect the addition of generics * Major new sections on assertions and regular expressions * Coverage of all the new language features, from autoboxing and variable argument methods to the enhanced for-loop and covariant return types * Coverage of key new classes, such as Formatter and Scanner The Java(TM) Programming Language, Fourth Edition, is the definitive tutorial introduction to the Java language and essential libraries and an indispensable reference for all programmers, including those with extensive experience. It brings together insights you can only get from the creators of Java: insights that will help you write software of exceptional quality.