Hi Schokoschabe.
Ich wolle dem Nutzer aber die Möglichkeit geben, zusätzlich (so ursprünglich geplant)
- eine weitere Farbe
- eine Textgröße
- und eine Font
als optionale Parameter zu übergeben.
Ich empfehle aus praktischen und auch philosophischen Gruenden, drueber nachzudenken, ob diese Eigenschaften unbedingt als Parameter beim Erstellen des Objektes uebergeben werden sollen. Solche langen Parameterwuerste fuehren erstens dazu, dass man sich nix merken kann und jedes Mal in der Doku nachsehen muss, wenn man den Aufruf machen will, und zweitens zu den Problemchen, vor denen Du ja gerade stehst.
Also wuerde ich vorschlagen: Der Konstruktor bekommnt nach wie vor die drei festen Parameter, und die Klasse kriegt Methoden wie
- addColor
- setFontSize
- setFont
Eine (sehr vage) Richtlinie dazu: Der Konstruktor ist (in erster Linie) dazu da, das Objekt zu initialisieren, also in einen vernuenftigen Anfangszustand zu bringen, in dem es existieren kann. Die Parameter, die man dem Konstruktor mitgibt, sind essentielle Informationen, die benoetigt werden, damit das Objekt ueberhaupt geboren werden kann.
D.h.: Wenn - und so scheint es zu sein - das Objekt mit Default-Werten fuer Farbe, Groesse und Schriftart arbeiten kann, dann kann der Konstruktor prima auf diese Angaben verzichten.
Das heisst nicht, dass sie im Konstruktor keine Daseinsberechtigung haben oder Dein Ansatz falsch ist, aber vielleicht ist diese Loesung handlicher und benuzterfreundlicher.
Viele Gruesse,
der Bademeister