The generalization of class Classifier The generalization of class
Classifiers represent nouns Classes Objects But also non-CS objects Organizations People
Symbol A simple rectangle with a name A partitioned rectangle
Classifier Names Simple - myClass Path – java::awt::Rectangle Name in italics means Abstract
Name Attributes Operations Additional Partitions Responsibilities Exceptions
Attribute Syntax [visibility] name [multiplicity] [: type] [= initial value] [{property string}] Visibility Public “+”, Private “-”, protected “#” Multiplicity “[0..1]”, “[1..*]” Class Attribute (e.g. static) is underlined Properties: “frozen”, “addOnly”
Operation Syntax [visibility] name [(parameter-list)] [: type] [= initial value] [{property string}] Parameter-list items: [direction] name :type [= default value] Directions is “in”, “out”, “inout” Properties “isQuery”, “sequential”, “guarded”, “concurrent”
Stereotyping <<interface>> RsClient
Relationships with Classifiers <<interface>> Generalization Association (navigation) Realization
Associations Mult. Mult. Role Role Directionality with an arrow Composition (when solid) Aggregation
Dependency <<interface>>
Kinds of Dependency (Stereotypes) Friend instanceOf Use Include Extend Call
Classifiers Appear in many of the nine diagrams Syntax shown here is also extend in consistent ways to other diagrams and symbols