Types
|
I use a separate notation for Types than for classes. Types are shown with a "Set-like" notation of a curly edged box. This distinguishes them from classes and makes them more distinct then just a rectangle again. Otherwise they have the same meaning as the rectangles in [Kilov+R 94].
|
 |
|
Method (and Attribute) compartments can be specified for a Type, but instance variables can not be.
|
 |
|
A Class (or Object) can be shown to implement a Type by an arrow pointing from the Class to the Type.
|
 |
|
When the class is not important enough to be very large, its symbol can be shrunk and the name placed outside. This is frequently useful for giving example implementations of a Type in a complicated diagram.
|
 |
Shorthand for hand drawings
It is acceptable to draw types as straight rectangles instead of the curly rectangles.
|