What is New in the Sixth Edition?
This edition substantially enhances Introduction to Java Programming Fifth Edition. The major improvements are as follows:
Full Java 5 Update
The Java 5 features are fully integrated in this edition. (Note: the fifth edition treats Java 5 features in separate optional sections.)
Complete Revision
The book is completely revised in every detail to enhance clarity, content, presentation, examples, and exercises.
Enhanced Examples
The book provides many new illustrations and uses small, simple, and stimulating examples to demonstrate concepts and techniques. Longer examples are presented in case studies with overall discussions and thorough line-by-line explanations.
Early Interesting Programs
Students can now write short, interesting, graphical game programs starting from Chapter 2.
JOptionPane and Scanner
Chapter 2 introduces how to use JOptionPane and Scanner to receive input. Students can use either JOpationPane or Scanner for obtaining input.
New Recursion Chapter
Recursion is expanded to form a new chapter 19. It can be covered after Chapter 5, “Methods.”
Early Text I/O
High-level text I/O using the Formatter and Scanner classes is introduced in Chapter 8 along with the strings. The text I/O supersedes the Writer and Reader classes and their subclasses. The binary I/O is covered in Chapter 18.
Early ArrayList
ArrayList is introduced early in Chapter 8.
Extensive Supplements
Extensive supplements (e.g., design patterns, rapid GUI development, database design, SQL, etc.) are provided for instructors to customize a course.
Part I Enhancements
Part I, “Fundamentals of Programming,” focuses on problem-solving and basic programming techniques with many new illustrations and practical examples such as a learning game in Sections 3.2.5 and 3.3.2. This part uses JOptionPane input dialog to receive input, but console input using the Scanner class is also introduced to provide an alternative way for input.
Part II Enhancements
Part II, “Object-Oriented Programming,” is expanded into five chapters to give a comprehensive introduction on OOP and how to use it to design programs. New organization enhances the presentation of object-oriented programming and enables GUI programming to be covered earlier.
Part III Enhancements
Part III, “GUI Programming,” is expanded into five chapters to introduce GUI programming, graphics painting, event-driven programming, creating user interfaces, and applets. Advanced GUI features are now covered in Part VII, "Advanced GUI Programming."
Part V Enhancements
Part V, “Data Structures and Collections Framework,” is expanded to cover data structure design and implementation (array list, linked list, stack, queue, heap, priority queue, and binary tree), generics, Java Collections Framework, and algorithm efficiencies and sorting.
Part VI Enhancements
Part VI, “Multithreading, Networking, and Internationalization,” is updated to cover Java 5 thread pooling and semaphores.
Part VII Enhancements
Part VII, “Advanced GUI Programming,” is expanded into five chapters with new short and simple examples to teach complex subjects.
Part VIII Enhancements
Part VIII, “Web Programming,” is expanded into five chapters. The advanced database programming is in a separate chapter and may be skipped.

