Paket-Schnittstellen in Java? |
tano24
Grünschnabel
Dabei seit: 21.11.2018
Beiträge: 3
Herkunft: Deutschland
![](images/spacer.gif) |
|
Paket-Schnittstellen in Java? |
![Zum Anfang der Seite springen Zum Anfang der Seite springen](images/goup.gif) |
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ärungen
Danke.
|
|
26.11.2018 17:18 |
|
|
as_string
Haudegen
![](images/star2.gif) ![](images/star2.gif) ![](images/star2.gif)
Dabei seit: 06.11.2013
Beiträge: 638
Herkunft: Heidelberg
![](images/spacer.gif) |
|
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
|
|
27.11.2018 14:15 |
|
|
tano24
Grünschnabel
Dabei seit: 21.11.2018
Beiträge: 3
Herkunft: Deutschland
![](images/spacer.gif) |
|
Danke
Hat mir weitergeholfen.
PS: Hab mich vergessen zu bedanken
Mfg
tano24
|
|
30.11.2018 23:07 |
|
|
|