Lernpfad:Objektorientierte Programmierung mit Java/Vererbung: Unterschied zwischen den Versionen

Zur Navigation springen Zur Suche springen
Zeile 11: Zeile 11:
{{Schublade|Es gibt verschiedene Formen wie Rechteck, Dreieck und Quadrat. Jede Form besitzt eine x- und y-Koordinate und eine Richtung. Formen können versetzt und gedreht werden. Rechtecke besitzen zwei Seitenlängen. Bei Quadraten sind beide Seitenlängen gleich. Dreiecke werden über zwei Punkte festgelegt, die auch eine x- und y-Koordinate besitzen. Die dritte Ecke wird durch die Position des Dreiecks festgelegt.}}
{{Schublade|Es gibt verschiedene Formen wie Rechteck, Dreieck und Quadrat. Jede Form besitzt eine x- und y-Koordinate und eine Richtung. Formen können versetzt und gedreht werden. Rechtecke besitzen zwei Seitenlängen. Bei Quadraten sind beide Seitenlängen gleich. Dreiecke werden über zwei Punkte festgelegt, die auch eine x- und y-Koordinate besitzen. Die dritte Ecke wird durch die Position des Dreiecks festgelegt.}}
Ein erstes Implementierungsdiagramm ohne Vererbung könnte so aussehen:
Ein erstes Implementierungsdiagramm ohne Vererbung könnte so aussehen:
<graphviz>
digraph G {
        fontname = "Bitstream Vera Sans"
        fontsize = 8
        rankdir = BT
        node [fontname = "Bitstream Vera Sans";fontsize = 8;shape = "record"]
        edge [fontname = "Bitstream Vera Sans";fontsize = 8]
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||+ bark() : void\l}"]
Quadrat [label = "{Quadrat||+ meow() : void\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}"]
edge [style="dashed",arrowhead="open"]
Dreieck -> Punkt
Rechteck -> Punkt
Quadrat -> Punkt
}
</graphviz>
[[Datei:UML Vererbung 1.jpg|center]]
[[Datei:UML Vererbung 1.jpg|center]]


Navigationsmenü