Introduction to Java Class Diagrams Classes Account class

  • Slides: 14
Download presentation
Introduction to Java Class Diagrams

Introduction to Java Class Diagrams

Classes Account class Account { … }

Classes Account class Account { … }

Attributes Account balance: float = 0 limit: float class Account { float balance =

Attributes Account balance: float = 0 limit: float class Account { float balance = 0; float limit; } [visibility] attribute. Name [multiplicity] [: type [ = initial. Value ] ]

Visibility Account - balance: float = 0 - limit: float class Account { private

Visibility Account - balance: float = 0 - limit: float class Account { private float balance = 0; private float limit; } + public - private # protected ~ package

Operations (methods) Account - balance: float = 0 - limit: float class Account {

Operations (methods) Account - balance: float = 0 - limit: float class Account { private float balance = 0; private float limit; + deposit( amount: float ) + withdraw( amount: float ) public void deposit(float amount) public void withdraw(float amount) } [visibility] method. Name( [parameter: type]* ) [ : return. Type]

Class scope Person - num. People: int - name: String class Person { private

Class scope Person - num. People: int - name: String class Person { private static int num. People; private String name; + get. Name() : String + get. Num. People() : int public String get. Name() public static int get. Num. People() }

Composition A comprises local objects that die when A dies Basket Item class Basket

Composition A comprises local objects that die when A dies Basket Item class Basket { Item item = new Item(); }

Aggregation comprised of sharable objects Computer Device class Computer { Device dev; Computer(Device dev)

Aggregation comprised of sharable objects Computer Device class Computer { Device dev; Computer(Device dev) { this. dev = dev; } }

Multiplicities Basket 1 Item class Basket { Item item = new Item(); }

Multiplicities Basket 1 Item class Basket { Item item = new Item(); }

Multiplicities Basket 5 Item class Basket { Item[] item = new Item[5]; }

Multiplicities Basket 5 Item class Basket { Item[] item = new Item[5]; }

Multiplicities Basket 0. . 1 Item class Basket { // may or may not

Multiplicities Basket 0. . 1 Item class Basket { // may or may not exist Item item; } i. . j means i <= # objects <= j

Multiplicities Basket 0. . * Item class Basket { List<Item> item. List = new.

Multiplicities Basket 0. . * Item class Basket { List<Item> item. List = new. Array. List<Item>(); } * means no a priori upper limit

Generalization (is a) Person Employee class Person { … } class Employee extends Person

Generalization (is a) Person Employee class Person { … } class Employee extends Person { … }

Realization Person Employee interface Person { … } class Employee implements Person { …

Realization Person Employee interface Person { … } class Employee implements Person { … }