- 3 row arrangement (Class name, Attributes, Methods)
- An optional 4 row (Responsibilities) can be added to mention what is expected of the class
- Class name is the only mandatory field
- Attributes
- Format =>
<access specifier> <attribute name> : <data type> /=> derived attribute, not an actual data member+=> public#=> protected-=> private~=> package level visibility- Static attributes => to be underlined
- Format =>
- Methods,
- Use the function signature
+=> public#=> protected-=> private- Static member function => mention no access specifier
- If the class name is preceded by
<<abstract>>, then it’s an abstract class, (italics were used in older UMLs)
Example,
