Paket-Schnittstellen in Java?

Neue Frage »

Auf diesen Beitrag antworten »
tano24 Paket-Schnittstellen in Java?

Meine Frage:
Hi Leute,
komme in dieser Aufgabe nicht weiter und benötige zu den Punkten 3 und 4 Hilfe.

Paket-Schnittstellen:

Sie haben eine Klasse Time entwickelt, die für eine Zeitangabe steht und die eine add()- Routine für die Addition von Zeitangaben anbietet. Das Paket wird im Projekt an vielen Stellen für die Speicherung von Verarbeitung von Zeitangaben genutzt. Die Zeit wird in der Klasse folgendermaßen gespeichert:
public int seconds;
public int minutes;
public int hours;

Während Sie Korrekturen an der Implementierung der add()-Routine durchführen,
entschließen Sie sich, die Speicherung von Stunden, Minuten und Sekunden auf
Sekunden seit 0:00 Uhr umzustellen. Das Ergebnis der Umstellung sieht wie folgt aus. Für Sie wird hierdurch die Implementierung der Routinen im Paket, zum Beispiel der add()- Routine viel einfacher.
public int seconds;

1 Welche Folgen hat diese Änderung auf Nutzer Ihres Pakets?
2 Warum sind die Folgen Ihrer Änderung so gravierend?
3 Wie hätten Sie die Klasse (vor der Änderung) gestalten sollen, damit sich solche
Änderungen nicht auf die Nutzer Ihres Pakets auswirken?
4 Implementieren Sie die verbesserte Klasse (ohne Änderung, also noch mit den 3 Variablen)

Meine Ideen:
Meine Lösung zu den Punkten 1&2

1 Nutzer des Pakets könnten jetzt Probleme beim benutzen haben, da der gesamte Code davor mit 3 Variablen aufgebaut ist, könnte es sein das es nicht mehr richtig funktioniert.
2 Die Folge ist schlecht da nun das gesamte Paket nicht mehr richtig funktioniert.

Falls 1&2 nicht stimmen wäre ich über jeden Hinweis dankbar.

Meine Ideen zu 3&4:

3 Ich hätte die ganze Klasse mit private programmieren sollen da dann keine Werte mehr im Nachhinein geändert werden können.Der Endbenutzer kann dann mein Programm in einem gewissen Rahmen nutzen.

4 bei 4. habe ich kein Plan. Wäre über ein Bsp oder kleinen Hinweis dankbar.

Bin ein Anfänger im Programmieren. Bevorzuge einfach Erklärungensmile

Danke.
 
Auf diesen Beitrag antworten »
as_string

1. An jeder Stelle, an der auf die 3 Membervariablen direkt zugegriffen wurde, muss jetzt eine Anpassung stattfinden, weil es ja nur noch eine Variable gibt.
2. Gravierend deshalb, weil überall Code verändert werden muss. Stellen, die man vergisst, führen direkt zu einem Fehler (allerdings schon ein Syntaxfehler, so dass es leicht zu finden ist).
3. Benutzung von Gettern und Settern, passende Konstruktoren vielleicht noch.
4. Schau Dir mal an, wie man solche Getter/Setter macht.

Gruß
Marco
Auf diesen Beitrag antworten »
tano24

Danke Daumen hoch
Hat mir weitergeholfen.

PS: Hab mich vergessen zu bedanken Zunge raus

Mfg
tano24
 
Neue Frage »
Antworten »


Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »