8.582
Bearbeitungen
Jneug (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Jneug (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
| Zeile 20: | Zeile 20: | ||
edge [fontname = "Bitstream Vera Sans";fontsize = 10] | edge [fontname = "Bitstream Vera Sans";fontsize = 10] | ||
Dreieck [label = "{Dreieck|-position: Punkt\l-richtung: double\l-punktB: Punkt\l-punktC: Punkt\l|+Dreieck(pPosition: Punkt, pPunktB: Punkt\l pPunktC: Punkt, pRichtung: double)\l+getPosition(): Punkt\l+setPosition(pPosition: Punkt)\l+getPunktB(): Punkt\l+setPunktB(pPunktB: Punkt)\l+getPunktC(): Punkt\l+setPunktC(pPunktC: Punkt)\l+getRichtung(): double\l+setRichtung(pRichtung: double)\l+versetzen(pX | Dreieck [label = "{Dreieck|-position: Punkt\l-richtung: double\l-punktB: Punkt\l-punktC: Punkt\l|+Dreieck(pPosition: Punkt, pPunktB: Punkt\l pPunktC: Punkt, pRichtung: double)\l+getPosition(): Punkt\l+setPosition(pPosition: Punkt)\l+getPunktB(): Punkt\l+setPunktB(pPunktB: Punkt)\l+getPunktC(): Punkt\l+setPunktC(pPunktC: Punkt)\l+getRichtung(): double\l+setRichtung(pRichtung: double)\l+versetzen(pX: int, pY: int)\l+drehen(pGrad: double)\l}"] | ||
Rechteck [label = "{Rechteck|-position: Punkt\l-richtung: double\l-a: int\l-b: int\l|+ | Rechteck [label = "{Rechteck|-position: Punkt\l-richtung: double\l-a: int\l-b: int\l|+Rechteck(pPosition: Punkt, pA: int\l pB: int, pRichtung: double)\l+getPosition(): Punkt\l+setPosition(pPosition: Punkt)\l+getA(): int\l+setA(pA: int)\l+getB(): int\l+setB(pB: int)\l+getRichtung(): double\l+setRichtung(pRichtung: double)\l+versetzen(pX: int, pY: int)\l+drehen(pGrad: double)\l}"] | ||
Quadrat [label = "{Quadrat|-position: Punkt\l-richtung: double\l-a: int\l|+ | Quadrat [label = "{Quadrat|-position: Punkt\l-richtung: double\l-a: int\l|+Quadrat(pPosition: Punkt, pA: int,\l pRichtung: double)\l+getPosition(): Punkt\l+setPosition(pPosition: Punkt)\l+getA(): int\l+setA(pA: int)\l+getRichtung(): double\l+setRichtung(pRichtung: double)\l+versetzen(pX: int, pY: int)\l+drehen(pGrad: double)\l}"] | ||
Punkt [label = "{Punkt|-x: int\l-y : int\l|+Punkt(pX: int, pY: int)\l+getX(): int\l+getY(): int\l+setX(pX: int)\l+setY(pY: int)\l}"] | Punkt [label = "{Punkt|-x: int\l-y : int\l|+Punkt(pX: int, pY: int)\l+getX(): int\l+getY(): int\l+setX(pX: int)\l+setY(pY: int)\l}"] | ||
| Zeile 39: | Zeile 39: | ||
Das neue Implementierungsdiagramm sieht so aus: | Das neue Implementierungsdiagramm sieht so aus: | ||
[[ | <graphviz> | ||
digraph G { | |||
fontname = "Bitstream Vera Sans" | |||
fontsize = 10 | |||
rankdir = TB | |||
node [fontname = "Bitstream Vera Sans";fontsize = 10;shape = "record"] | |||
edge [fontname = "Bitstream Vera Sans";fontsize = 10] | |||
Dreieck [label = "{Dreieck|-punktB: Punkt\l-punktC: Punkt\l|+Dreieck(pPosition: Punkt, pPunktB: Punkt\l pPunktC: Punkt, pRichtung: double)\l+getPunktB(): Punkt\l+setPunktB(pPunktB: Punkt)\l+getPunktC(): Punkt\l+setPunktC(pPunktC: Punkt)\l}"] | |||
Rechteck [label = "{Rechteck|-a: int\l-b: int\l|+Rechteck(pPosition: Punkt, pA: int\l pB: int, pRichtung: double)\l+getA(): int\l+setA(pA: int)\l+getB(): int\l+setB(pB: int)\l}"] | |||
Quadrat [label = "{Quadrat||+Quadrat(pPosition: Punkt, pRichtung: double,\lpA: int)\l}"] | |||
Punkt [label = "{Punkt|-x: int\l-y : int\l|+Punkt(pX: int, pY: int)\l+getX(): int\l+getY(): int\l+setX(pX: int)\l+setY(pY: int)\l}"] | |||
Form [label="{Form|-position: Punkt\l-richtung: double|+Form(pPosition: Punkt, pRichtung: double)\l+getPosition(): Punkt\l+setPosition(pPosition: Punkt)\l+getRichtung(): double\l+setRichtung(pRichtung: double)\l+versetzen(pX: int, pY: int)\l+drehen(pGrad: double)\l}"] | |||
edge [style="dashed",arrowhead="open"] | |||
Dreieck -> Punkt | |||
Form -> Punkt | |||
edge [arrowhead="empty"] | |||
Quadrat -> Rechteck -> Form | |||
Dreieck -> Form | |||
} | |||
</graphviz> | |||
Folgende Anweisungen sind mit Vererbung korrekt, obwohl der Quelltext der Klasse <code>Quadrat</code> die Methode <code>public void versetzen()</code> nirgendwo explizit enthält. | Folgende Anweisungen sind mit Vererbung korrekt, obwohl der Quelltext der Klasse <code>Quadrat</code> die Methode <code>public void versetzen()</code> nirgendwo explizit enthält. | ||