# Java-Implementierung diverser Beziehungen zwischen Klassen bzw. Objekten



## Jay1980 (18. Mrz 2012)

Hi, ich suche nach Artikeln, die beschreiben, wie man Beziehungen aus dem Klassendiagramm in Java implementiert und welche Vor- und Nachteile damit einhergehen. Wie setzt ihr etwa eine Beziehung um, die n:m ist und bidirektional navigierbar sein soll? Danke vorab für ein paar Leseempfehlungen.


----------



## Fant (19. Mrz 2012)

Einen Artikel oder sonst was kann ich dir leider nicht liefern, aber was macht denn Probleme? Für eine bidirektionales n:m-Relation musst du auf irgendeine Weise auf beiden Seiten die Referencen auf die entsprechende andere Klasse speichern.


```
public class Class1 {
    private Set<Class2> set = new HashSet<Class2>();
    ...   
}

public class Class2 {
    private Set<Class1> set = new HashSet<Class1>();
    ...
}
```

Du musst nur selbst dafür sorgen, dass auf beiden Seiten stets die richtigen Referencen in den HashSets stehen, z.B. einfach über die entsprechenden setter-Methoden.

Du kannst natürlich auch eine dritte Klasse anlegen und die n:m-Relation mit Hilfe von zwei 1:n-Relationen realisieren. 

Ich hoffe das war nich ganz an deiner Frage vorbei? ^.^

Gruß Fant


----------



## Tomate_Salat (19. Mrz 2012)




----------

