Appendix B. UML Basics

Unified Modeling Language (UML) is an object modeling specification language that uses graphical notation to create an abstract model of a system. The Object Management Group governs UML. This modeling language can be applied to Java programs to help graphically depict such things as class relationships and sequence diagrams. The latest specifications for UML can be found at the OMG website. An informative book on UML is UML Distilled, Third Edition, by Martin Fowler (Addison-Wesley, 2003).

Class Diagrams

A class diagram represents the static structure of a system, displaying information for classes and relationships between them. The individual class diagram is divided into three compartments: name, attributes (optional), and operations (optional); see Figure B-1 and the example that follows it.

Class diagram
Figure B-1. Class diagram
// Corresponding code segment
class Orchestra { // Class Name
  // Attributes
  private String orch Name;
  private Integer instrCount = 7;
  // Operations
  public void setOrchName(String name) {...}
  public Boolean play(Score s) {...}


The name compartment is required and includes the class or interface name typed in boldface.


The attributes compartment is optional and includes member variables that represent the state of the object. The complete UML usage is as follows:

visibility name : type [multiplicity] = defaultValue

Get Java 7 Pocket Guide, 2nd Edition now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.