The goal of this book is to explore the principle ideas of object-oriented programming using the Java programming language. It begins teaching the object-oriented power of Java by relying on textual commands instead of emphasizing the AWT or Swing libraries, providing the reader with a simple, generic introduction to the OO concepts using Java (without the language details getting in the way of the concept presentation). The author provides a thorough introduction to the three fundamental concepts of object-oriented programming: Encapsulation, Inheritance, and Polymorphism. The presentation of OO theory is augmented by interleaved examples that illustrate these concepts. Most of these program examples are 2-D graphics programs that provide an intuitive context for the issues that must be addressed when learning OOP. Additionally, since graphics programming is one of the strengths of the Java development environment, the examples produce interesting and unexpected images that engage and motivate the reader. It contains a concise introduction to using Design Patterns particularly the Template Method, Iterator, and Composite design patterns which relate to the graphics examples in the book and uses UML class diagrams to show the static structure of systems and sequence diagrams to show object interactions. This book is appropriate for readers who are new to object-oriented (but have experience with a non-object-oriented language) and for programmers who want to learn the graphical elements and capabilities of Java.
Understanding object-oriented concepts is critical to the practice of modern-day software development. Object-Oriented Programming Featuring Graphical Applications in Java™ explains the key concepts in clear terms and illustrates with examples, many of which are drawn from two-dimensional computer graphics. It assumes limited previous experience with Java and no previous experience with UML or Java 2D. /I>
Features: - Key object-oriented concepts presented using Java 2D, Java's application programming interface for two-dimensional graphics
- Interactive programs that take input via textual commands and through graphical user interface based on Swing
- A subset of UML that illustrates program designs
- Stepped-out exercises that interleave theory and practice
- Design patterns, focusing on the template method, iterator, and composite patterns, that relate to the graphics examples in the book
- Object-oriented frameworks that use the AWT and Swing to build programs with graphical user interfaces
- A package of over 60 classes and interfaces for building and rendering 2-D geometries
- Online code and documentation