Java, Java, Java, Third Edition systematically introduces the Java 1.5 language in the context of practical problem-solving and effective object-oriented design. Carefully and incrementally, the authors demonstrate how to decompose problems, use UML diagrams to design Java software that solves those problems, and transform their designs into efficient, robust code. Their "objects-early" approach reflects the latest pedagogical insights into teaching Java, and their lucid, engaging examples help readers apply sophisticated techniques rapidly and effectively.
The authors begin by helping students gain a deep understanding of the fundamentals of object orientation, including the purpose and use of objects, classes, methods, parameter passing, information hiding, and simple inheritance and polymorphism. Students rapidly master the basic building blocks for constructing new programs, learning how to create objects and manage their interactions,
Next, the authors turn to core language elements such as data types, control structures, strings, and arrays, while offering deeper practical insights into inheritance and polymorphism. In Part III, they turn to advanced topics, including exceptions, file I/O, recursion, GUIs, threads and concurrent programming, sockets and networking, data structures, sen/lets, and JavaServer Pages. This modular, self-contained coverage allows instructors to choose topics selectively as time permits. An optional "graphics track" is also provided throughout, supporting those who wish to focus on graphics and GUI development.
Major improvements to Java, Java, Java, Third Edition include:
- A simpler, more accessible introduction to the fundamentals of object-oriented programming and UML concepts
- A new collection of examples: students build games and puzzles that are both pedagogically valuable and inherently interesting
- More thorough coverage of inheritance and polymorphism
- A completely rewritten guide to interface design, including independent introductions to both command-line and graphical user interfaces
- Expanded coverage of sockets and networking, including coverage of servllets, JSP, and other Internet programming technologies
- More complete, practical coverage of data structures, ranging from the Java Collection Framework to sets, maps, and binary search trees