Programmieren von "-amtlichesKennzeichen : String(idl){unique}

adlerauge6

Mitglied
Das sollten wir für die Klasse Auto programmieren. Also das Attribut.
Bin nur gerad etwas leicht verwirrt, wegen dem unique.. das heißt ja soviel wie, dasss die Elemente nur einmal vorkommen.

Ist das das eine Hashmap die das überprüft oder einfach ein: private final String amtlichesKennzeichen()
Wüsste jetzt nicht so genau, wie ich das mit dem unique machen soll.
Ne private Haspmap kanns ja net sein, weil ja dann jedes Auto Objekt ne Hashmap hat was ja unlogisch nach meiner Meinung wäre.

Hätte es jetzt dann einfach so gemacht: private final String amtlichesKennzeichen;

Gruß adlerauge6
 

agentone

Bekanntes Mitglied
Ich würde eine extra Klasse machen, die eine statische private Liste aller vergebenen Amtszeichen enthält und zwei statische Methoden, einmal zum prüfen, ob das Amtszeichen schon vergeben ist und einmal zum reservieren eines Amtszeichens.
Die Methoden werden dann vom Konstruktor der Klasse Auto aufgerufen und entsprechend wird eine AmstszeichenNotAvailableException (sehr schönes Denglisch!!!) geworfen, wenn das Zeichen schon existiert.
 
M

maki

Gast
Ich würde eine extra Klasse machen, die eine statische private Liste aller vergebenen Amtszeichen enthält und zwei statische Methoden, einmal zum prüfen, ob das Amtszeichen schon vergeben ist und einmal zum reservieren eines Amtszeichens.
Die Methoden werden dann vom Konstruktor der Klasse Auto aufgerufen und entsprechend wird eine AmstszeichenNotAvailableException (sehr schönes Denglisch!!!) geworfen, wenn das Zeichen schon existiert.
Umgekehrt wird ein Schuh draus, eine Factory erzeugt Autos, und setzt die ID richtig.
So braucht der Konstruktor keine externen Abhängigkeiten.
 

adlerauge6

Mitglied
Danke für die Tipps hatt mich weitergebracht :)
Hatte mich aber leider vertippt gestern. sollte LKW heißen nicht auto.. was ja aber auch egal ist

Hier mal das UML dazu

hxkgjata.png


in der nächsten Aufgabe steht:

Welche Notationselemente des vorliegenden Klassendiagramms lassen sich nicht unmittelbar in Attribute einer Java-Klasse übertragen? Beschreiben Sie verbal, an welcher Stelle im Programm Sie die entsprechenden Anforderungen als Java-Anweisungen implementieren würden. Die Implementierung selbst ist nicht erforderlich.

Ich würde hier dann schreiben, dass das hier das unique nicht direkt in LWK implementiert werden kann, daher war mein frage ja bezüglich dem unique.
Sonst wars das doch oder?

Nach meine Sicht der Dinge oder habt ihr vll noch einen anderen hinweiß?


Schonmal vielen Dank an alle die mir bisher so super geholfen haben :)

Gruß adlerauge6
 

XHelp

Top Contributor
Zu deinem UML:
Mir ist nicht klar, warum ein LKW "anzahlLKWimFuhrpark" als schlüssel hat bzw warum dieses Atribut überhaupt im LKW ist. Wie der Name schon sagt müsste es noch ein Fuhrpark geben, wo es gespeichert wird. Dafür macht es aber durch aus Sinn das Kennzeichen als Schlüsselwert zu nehmen.
Zudem hast du gar kein Feld vorgesehen um LKW in einer Tour zu speichern (genau so wie Ort und Ziel)

Zu der Aufgabe:
Je nach dem was "unmittelbar" heißt... Man könnte es noch so auslegen: "Fahrer" kann man nicht unmittelbar als Attribut darstellen, denn man muss zuerst die Klasse "Fahrer" erstellen.
 

adlerauge6

Mitglied
Gut mir is das auch unklar muss ich dazu sagen. Das ist ne Aufgabe von ner Klausur im Fach Modellierung vom SS2009.. eine MusterLösung/Lösung existiert davon leider nicht.

Fande diese Aufgabe auch mehr als schleierhaft.

Ich denk mal das das nicht unbedingt als Attribut definiert werden muss da ja aus der Assoziation schon raus lesbar ist dass Tour ein Pointer zu Ort Ziel/Start haben muss.. wie auch zu Fahrer und LKW.

Wäre das mit dem Unique denn auch okey wenn ich schreiben würde, dass dies in einer Fuhrpark Klasse beachtet werden soll, dass die erstellten LKWs nicht das gleiche Kennzeichen haben?

Gruß adlerauge6
 

Neue Themen


Oben