Neue Timer-Klasse
Standardfälle
Bei der Benutzung von Gettern und Settern gibt es drei Standardfälle, die man besonders häufig antrifft:
- Der Standard-Getter und der Standard-Setter werden automatisch vom Compiler hinzugefügt und steuern den Zugriff auf ein Attribut, ohne dass man sie explizit angibt. Der Zugriff auf das Attribut ist nicht eingeschränkt.
- Man definiert einen Setter, um den schreibenden Zugriff auf ein Attribut zu steuern. Im Setter überprüft man, ob der Wert, der dem Attribut zugewiesen werden soll, gültig ist, und weist ihn nur dann zu. Ansonsten bleibt der Wert des Attributs unverändert oder wird auf einen gültigen Wert gesetzt. Der Compiler fügt automatisch einen Standard-Getter hinzu, der einfach den Wert des Attributs zurückgibt.
-
Man deklariert ein nur lesbares abgeleitetes Attribut
(computed property) mit
valund definiert einen Getter. Dieser berechnet den Wert bei jedem Lesen aus anderen Attributen; ein eigener Wert wird nicht gespeichert. Da das Attribut mitvaldeklariert ist, hat es keinen Setter, auch keinen Standard-Setter.
Aufgabe 1
(a) Mache dir bewusst, welche der drei Standardfälle für den Timer relevant sind,
und beschreibe die von dir identifizierten Fälle in eigenen Worten
am Beispiel der Timer-Klasse.
(b) Überprüfe, ob die von dir geschriebene Timer-Klasse
so funktioniert, wie du es sinnvoll findest.
Du entscheidest, welche Werte die Attribute min und max
annehmen dürfen und wie du damit umgehst, wenn ungültige Werte zugewiesen werden.
Passe die Klasse gegebenenfalls an.
Nutze bei Bedarf die logischen Operatoren && (und),
|| (oder) und ! (nicht), um komplexere Bedingungen zu
formulieren.
Nutze dazu das ursprüngliche BlueK-Projekt.