As you would expect, this new JDK 5 edition of "Murach's Beginning Java 2" includes the most useful new features of Java 5.0, also known as version 1.5. That includes: the Scanner class; type-safe enumerations; enhanced for loops; typed collections; generics; autoboxing; the StringBuilder class. But we didn't just tack these new features onto the old book the way most authors do. Instead, to take advantage of these features and to make other significant improvements, our authors decided that they needed to re-engineer the book from start to finish. The result is a book that will help you learn Java 5.0 faster and better than ever, whether you're a programming novice or have years of programming experience. It is also a book that will take you to a new level of expertise. To help you learn faster, this edition uses the new Scanner class for getting user input in the first three sections of the book. This means that you'll be writing complete programs by the time you finish chapter 2. And you will be writing object-oriented programs with business classes and objects by the time you finish chapter 6. To take you to a new level of expertise: This Java 5.0 (AKA 1.5 ) edition has expanded and enhanced the chapters on object-oriented programming, collections, exceptions, threads, and data access programming. In particular, this edition shows you how to use a three-tiered architecture to separate the business classes, presentation classes, and database classes of an application. It shows you practical techniques for populating business objects with data from files or databases. And it shows you how to use inheritance, polymorphism, interfaces, and the factory pattern in a way that is not only understandable but also useful in real-world applications.