# Klassendiagramm und Umsetzung (Einkaufsliste)



## AllOnline (19. Dez 2011)

Hallo zusammen,

ich möchte gerne eine Einkaufsliste in Java umsetzen.
Also gibt es ein Geschäft, welches x Artikel hat und verschiedene andere Attribute.
Weiterhin hat ein Artikel einen Preis, einen Namen und eine Menge je Geschäft.
Also ein Artikel kommt auch in x Geschäften vor.

Zu jeder Zeit muss ich Geschäfte und Artikel hinzufügen können.
Das ganze wollte ich dann noch mit einer Sortiment-Klasse umsetzen.

Zum Schluss kommt natürlich dann noch eine Einkaufsliste.
Ich muss später sehr zügig auf alle Daten zugreifen und Listen ausgeben.
-Welches Sortiment hat welches Geschäft mit Menge und Preis je Artikel.
-In welchen Geschäften ist der gesuchte Artikel mit welchen Preisen und Mengen vorhanden

Könnte mir einer bei der Umsetzung helfen?

```
Artikel ------/\-----Geschäft
              \/
               |
         Sortiment
```

Danke euch!


----------



## bygones (19. Dez 2011)

gerne wenn konkrete Fragen bzw Probleme vorhanden sind


----------



## AllOnline (19. Dez 2011)

Sry, gerne kann ich eine konkrete Frage/Bitte formulieren:
Könnt ihr mir die Attributive der Klassen zeigen damit ich verstehen kann wie diese Beziehungen möglichst optimal umgesetzt werden können.

Danke!

Ich habe mich leider in zu vielen Containern verloren :-(


----------



## stikio (19. Dez 2011)

vorneweg erstmal: artikel ist kein attribut von geschäft, so wie du oben schreibst. es sind 2 verschiedene klassen mit ihren jeweiligen attributen.


zum anfang könntest du dir gedanken machen, welche klassen welche attribute haben sollten.


----------



## AllOnline (19. Dez 2011)

Hallo,

Klassen hatte ich oben schon aufgelistet:
-Geschäfte
-Artikel
-Sortiment

Natürlich sind dies Klassen, aber dennoch können Instanzen eines Attribute eines anderen sein


```
import java.util.ArrayList;

public class Geschaeft {
	static ArrayList<Geschaeft> geschaefte = new ArrayList(); //Geschaeftsliste
	
	String name;
	ArrayList<Artikel> artikel = new ArrayList(); //Sortiement also ein Attribut
	
	public boolean fuegeArtikelHinzu(String pname, int pmenge, double ppreis){
		//check
		artikel.add(new Artikel(pname, pmenge, ppreis));
		return false;
	}
}
```

Aber ich finde dies nicht optimal und gerade die Frage wie man solche Beziehungen darstellt, ist die Frage!
Danke dir schon mal!


----------



## stikio (19. Dez 2011)

mit dem code hast du dir ja deine attribute für artikel schon festgelegt ;-)

wo is denn jetzt das genaue problem ?!


----------



## AllOnline (19. Dez 2011)

Wie Sortiment und Artikel aussehen soll ohne das ich die Daten x-Fach speichere,
wie würdet ihr das möglichst optimal umsetzen??

Ich muss wie im ersten Post steht möglichst schnell auf die Fragen antworten können.
PS: Vielen Dank für die schnellen Antworten!!


----------

