Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Venusspiegel und Marsschild

Ähnliche Präsentationen


Präsentation zum Thema: "Venusspiegel und Marsschild"—  Präsentation transkript:

1 Venusspiegel und Marsschild

2 Zwei Symbole Der Venusspiegel und der Marsschild haben den Kreisring gemeinsam. Wenn man beide graphisch darstellen möchte, ist es darum sinnvoll, eine gemeinsame Oberklasse Symbol zu programmieren, die nur diesen Kreisring enthält. Die Unterklasse Venusspiegel muss dann noch um zwei Rechtecke ergänzt werden, die Unterklasse Marsschild um ein Parallelogramm und zwei Rechtecke.

3 ♂ ♀ Klassendiagramm Symbol Venusspiegel Marsschild aussenkreis
innenkreis werdeSichtbar () werdeUnsichtbar () setzeFarbe () setzePosition () Venusspiegel Marsschild laengsbalken querbalken schraegbalken linkeSpitze rechteSpitze

4 Die Klasse Symbol public class Symbol { protected Ellipse aussenkreis; protected Ellipse innenkreis; public Symbol (int x, int y) aussenkreis = new Ellipse (); aussenkreis.setzeBreite (100); aussenkreis.setzeHoehe (100); aussenkreis.setzeFarbe ("gruen"); aussenkreis.setzePosition (x, y); aussenkreis.werdeSichtbar (); innenkreis = new Ellipse (); innenkreis.setzeBreite (80); innenkreis.setzeHoehe (80); innenkreis.setzeFarbe ("weiss"); innenkreis.setzePosition (x + 10, y + 10); innenkreis.werdeSichtbar (); } Im Konstruktor der Klasse Symbol erzeugen wir den Kreisring, indem wir auf einen farbigen Außenkreis einen weißen Innenkreis legen.

5 public void werdeSichtbar ()
{ aussenkreis.werdeSichtbar (); innenkreis.werdeSichtbar (); } public void werdeUnsichtbar () aussenkreis.werdeUnsichtbar (); innenkreis.werdeUnsichtbar (); public void setzeFarbe (String neueFarbe) aussenkreis.setzeFarbe (neueFarbe); innenkreis.setzeFarbe ("weiss"); public void setzePosition (int x, int y) aussenkreis.setzePosition (x , y ); innenkreis.setzePosition (x + 10, y + 10); Bei den vier Methoden der Klasse Symbol müssen wir jeweils den Außenkreis und den Innenkreis passend verändern.

6 Die Klasse Venusspiegel
public class Venusspiegel extends Symbol { private Rechteck laengsbalken; private Rechteck querbalken; Am Schlüsselwort extends erkennen wir, dass der Venusspiegel eine Unterklasse der Klasse Symbol ist. Zusätzlich zum Kreisring des Symbols besitzt der Venusspiegel einen Längs- und einen Querbalken.

7 public Venusspiegel (int x, int y)
{ super (x, y); laengsbalken = new Rechteck (); laengsbalken.setzeBreite (14); laengsbalken.setzeHoehe (50); laengsbalken.setzeFarbe ("gruen"); laengsbalken.setzePosition (x + 43, y + 95); laengsbalken.werdeSichtbar (); querbalken = new Rechteck (); querbalken.setzeBreite (40); querbalken.setzeHoehe (14); querbalken.setzeFarbe ("gruen"); querbalken.setzePosition (x + 30, y + 112); querbalken.werdeSichtbar (); } Im Konstruktor des Venusspiegels rufen wir mit super () zunächst den Konstruktor der Oberklasse Symbol auf. Dadurch wird der Kreisring erzeugt. Anschließend erzeugen wir dazu passend den Längs- und den Querbalken.

8 public void werdeSichtbar ()
{ super.werdeSichtbar (); laengsbalken.werdeSichtbar (); querbalken.werdeSichtbar (); } public void werdeUnsichtbar () super.werdeUnsichtbar (); laengsbalken.werdeUnsichtbar (); querbalken.werdeUnsichtbar (); Bei den Methoden der Klasse Venusspiegel rufen wir jeweils zuerst durch das vorangestellte super. die entsprechende Methode der Oberklasse Symbol auf. Anschließend verändern wir dazu passend den Längs- und den Querbalken.

9 public void setzeFarbe (String neueFarbe)
{ if (!neueFarbe.equals ("tuerkis")) super.setzeFarbe (neueFarbe); laengsbalken.setzeFarbe (neueFarbe); querbalken.setzeFarbe (neueFarbe); } public void setzePosition (int x, int y) super.setzePosition (x, y); laengsbalken.setzePosition (x + 43, y + 95); querbalken.setzePosition (x + 30, y + 112);


Herunterladen ppt "Venusspiegel und Marsschild"

Ähnliche Präsentationen


Google-Anzeigen