Object-Oriented Programming featuring Graphical Applications in Java (Paperback)

Michael J. Laszlo



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>


  • 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

Table of Contents

1. The Object Model.

Object Model Concepts.
The Object Model and Other Programming Models.

2. Procedural Abstraction.

Abstract Operations and Procedures.
Specifying Procedures.
Procedural Decomposition.

3. Data Abstraction.

Abstract Data Types.
Specifying and Implementing Data Abstractions.
Java Graphics: Some Background.
Making Graphics.

4. Composition.

Composition and Aggregation.
Random-Value Generators.
Composition of Many Parts.
Representation Invariants.
Interacting with Pictures.

5. Inheritance.

The Uses of Inheritance.
Inheritance for Extension.
Inheritance for Specialization.
Inheritance for Specification.
Figures and Painters.

6. Design Patterns.

The Need for Design Patterns.
The Iterator Design Pattern.
The Template Method Design Pattern.
The Composite Design Pattern.
Classifying Design Patterns.

7. Object-Oriented Application Frameworks.

Building GUI-Based Programs in Java using Frameworks.
Java's Event Model.
Layout Managers.
Components and Event Listeners.
Triangulate: A Point-Set Triangulation Program.
DrawPad: A Drawing Program.

Appendix A: Reading and Parsing User Input.
Appendix B: Our Graphics Program Framework.
Appendix C: A Notational Summary of UML.
Appendix D: Structure of the banana Package