Person
# firstname: String
# lastname: String
+ Person(firstname: String, lastname: String)
+ setLastname(name: String) : void
Student
- id: String
+ Student(firstname: String,
lastname: String, id: String)
Generalisierung
(Vererbung)
Person
# firstname: String
# lastname: String
+ Person(firstname: String, lastname: String)
+ setLastname(name: String) : void
Student
- id: String
+ Student(firstname: String,
lastname: String, id: String)
Course
Wie stellen wir Verbindungen
zwischen Klassen her?
?
= Objekte kommunizieren auf Augenhöhe
Assoziation
Student
- id: String
+ Student(firstname: String,
lastname: String, id: String)
Course
- id: String
+ Course(id: String, name: String)
- name: String
Eigenschaften:
= eine Klasse (Ganzes) besitzt andere als Teile
Eigenschaften:
Aggregation
Tire
Car
= eine Klasse (Ganzes) besitzt andere vollständig als Teile
Eigenschaften:
Komposition
Page
Book
Assoziation
Aggregation*
Komposition
Komposition
Das "Ganze"
Die "Teile"
Aggregation
Das "Ganze"
Die "Teile"
Merke: Je dunkler die Raute,
desto stärker die Bindung
* grau wird nur zur Darstellung verwendet (Rautenfarbe: weiß)
= wie viele Einheiten stehen jeweils in Beziehung
A
B
?
?
| Multiplizität | Bedeutung |
|---|---|
| 1 | genau eine |
| 0 ..1 | höchstens eine |
| 0 .. * | beliebig viele |
| 1 .. * | mindestens eine |
| m .. n | von m bis n (z.B. 2 .. 7) |
?
1
1..*
Beispiel?
= wie viele Einheiten stehen jeweils in Beziehung
Hochschule
Student:in
Kurs
Dozent:in
live