This is the second edition of the book that brought an exciting, new approach to Java instruction. Now, fully updated and improved from start to finish, this book helps both novices and experienced programmers learn faster and better than ever. It includes new 5.0 features like the Scanner class, enhanced for loops, typed collections, type- safe enumerations, generics, autoboxing, and the StringBuilder class. It's the first Java book that presents object-oriented features like inheritance, interfaces, and polymorphism in a way that's both understandable and useful in the real world. And it's all done in the unique Murach style that has been training professional programmers for more than 30 years.