Introduction to Java 2 Programming Handout #2 UML Reference

Introduction to Java 2 Programming Handout #2 UML Reference

<p>Introduction to Java 2 Programming Handout 05f24ff51e20589e5cc93af1ae08966e.doc</p><p>UML Reference Sheet</p><p>The Unified Modelling Language (UML) is a programming language neutral means of describing the structure of an OO application. There are many different types of UML diagram each of which fulfil a particular purpose.</p><p>The following examples review the basic elements used in a UML class diagram, and are a useful way to describe and investigate Java applications without having to examine the code line by line.</p><p>Aggregation</p><p>Aggregation is shown by a line between the two classes, with a clear diamond at the start of the line indicating the aggregate object, i.e. the line goes from the whole to the part.</p><p>Aggregation is a form of association between two classes. Therefore the aggregation relationship can be annotated as described below.</p><p>Association</p><p>A line between two classes indicates a simple relationship. The line can be annotated with additional information that further defines the relationship:  Its name  The role of each class in the relationship  The cardinality of the relationship.</p><p>L. Dodds, October 2002 1/4 Introduction to Java 2 Programming Handout 05f24ff51e20589e5cc93af1ae08966e.doc Cardinality Relationships in a UML diagram can indicate their cardinality. This shows how many instances of the objects are (or can be) involved in the relationship. Relationships can be</p><p> 1 -- usually omitted if 1:1  n – unlimited  0..1, 1..2, 1..n – a specified range  1..* -- one or more  0..* -- zero or more</p><p>The second example above indicates the following information about the relationship:</p><p> The relationship is called worksFor. i.e. an Employee worksFor a Company  In this relationship the Company class is the employer  A Company can have one or many Employees, but an Employee only worksFor one Company (see below)</p><p>Comment</p><p>A comment is simply a way to add additional documentation for the reader of a diagram.</p><p>Class</p><p>Classes are described as simple boxes that are divided up into three sections:  Top – the name of the class  Middle – the attributes of the class  Bottom – the methods of the class</p><p>L. Dodds, October 2002 2/4 Introduction to Java 2 Programming Handout 05f24ff51e20589e5cc93af1ae08966e.doc Attributes attributeName: typeOfAttribute</p><p>Methods methodName( ParameterType paramName, ParameterType2 param2Name, …): returnType</p><p>Visibility of Attributes and Methods Methods and attributes definitions can optionally also indicate whether their visibility:  Public (+)  Protected (#)  Private (-) In the example both attributes are private, and both methods are public.</p><p>Implementing an Interface</p><p>An interface specifies a set of public behaviours (a “contract”) that a class exposes to the world. In UML an interface is shown as a class, but is often distinguished as an interface by the marker “<<interface>>”. </p><p>A dotted arrow from a class to an interface indicates that this class fulfils the contract specified by that interface. In the above example both Document and Image share a common interface, Printable. </p><p>L. Dodds, October 2002 3/4 Introduction to Java 2 Programming Handout 05f24ff51e20589e5cc93af1ae08966e.doc Inheritance</p><p>An arrow shows inheritance between classes, with the arrow pointing from the sub-class (or derived class) to the super-class (or base class)</p><p>The example diagram shows that instances of SubClass will have three methods:  someMethod – inherited from the parent class  anotherMethod – a polymorphic method inherited from the parent class. The behaviour is the same, but the implementation is different  additionalMethod – a new method available only on the derived class</p><p>L. Dodds, October 2002 4/4</p>

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    4 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us