Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

1-n-assosiasjoner er koblinger mellom objekter hvor ett objekt av en type kan ha flere av en navngitt kobling til andre objekter av en annen eller samme type, men de andre kan bare ha én kobling tilbake. Et eksempel er at en CD kan ha flere spor, mens et spor bare kan være på/inni én CD. Et CD-objekt kan altså ha ingen, én eller flere inneholder-koblinger til Spor-objekter, mens et Spor-objekt kan bare være koblet (tilbake) til ett CD-objekt.

1-1n-assosiasjoner kodes i Java med et enkelt felt av Collection-felt spesialisert med < > til riktig type og med navn tilsvarende assosiasjonenrollen. Navngivingen av feltet er forsåvidt underordnet, siden det er innkapslingen i form av get-, add og set remove-metoder som er viktig. Her er diagrammet for en generell 1-1n-assosiasjon og kode-malen for de to klassene som deltar i den:

PlantUML Macro
class Rolle1Klasse {
}
class Rolle2Klasse {
}

Rolle1Klasse "rolle1 0:1" -- "rolle2 0:1n" Rolle2Klasse: assosiasjon


Code Block
languagejava
public class Rolle1Klasse {

	private Rolle2KlasseCollection<Rolle2Klasse rolle2;

	public Rolle2Klasse getRolle2() {
		return rolle2;
	}
	public void setRolle2(Rolle2Klasse rolle2) {
		this.rolle2 = rolle2;
	}
}
Code Block
languagejava
public class Rolle2Klasse {

	private Rolle1Klasse rolle1;

	public Rolle1Klasse getRolle1() {
		return rolle1;
	}
	public void setRolle1(Rolle1Klasse rolle1) {
		this.rolle1 = rolle1;
	}
}

...