Hallo zusammen,
ich habe Objekte vom Typ Knoten und Kante. Innerhalb der Klasse Knoten habe ich zwei ArrayList's (incommingEdges und outgoingEdges), welche die Information darüber, welche Kante in den Knoten ein- bzw. ausläuft, speichern. Erzeuge ich nun eine Kante, wird sie den entsprechenden Knoten als ein- bzw. ausgehend hinzugefügt.
Bisher bin ich immer davon ausgegangen, dass wenn ich nun eine Kante lösche, sie sich auch automatisch aus den beiden Listen löscht, da in den Listen nur Referenzen auf das Kanten-Objekt gespeichert werden.
Dies scheint aber nicht der Fall zu sein. Kann mir jemand sagen, was an meiner Überlegung falsch ist?
Wird ein Objekt erst gelöscht, wenn es keine Referenzen zu ihm gibt?
Gibt es eine Möglichkeit alle Referenzen auf ein Objekt zu löschen?
Das ganze soll dazu führen, dass sobald ein Knoten gelöscht wird, auch alle ein- bzw. ausgehenden Kanten gelöscht werden.
Vielen Dank vorab.
ich habe Objekte vom Typ Knoten und Kante. Innerhalb der Klasse Knoten habe ich zwei ArrayList's (incommingEdges und outgoingEdges), welche die Information darüber, welche Kante in den Knoten ein- bzw. ausläuft, speichern. Erzeuge ich nun eine Kante, wird sie den entsprechenden Knoten als ein- bzw. ausgehend hinzugefügt.
Bisher bin ich immer davon ausgegangen, dass wenn ich nun eine Kante lösche, sie sich auch automatisch aus den beiden Listen löscht, da in den Listen nur Referenzen auf das Kanten-Objekt gespeichert werden.
Dies scheint aber nicht der Fall zu sein. Kann mir jemand sagen, was an meiner Überlegung falsch ist?
Wird ein Objekt erst gelöscht, wenn es keine Referenzen zu ihm gibt?
Gibt es eine Möglichkeit alle Referenzen auf ein Objekt zu löschen?
Das ganze soll dazu führen, dass sobald ein Knoten gelöscht wird, auch alle ein- bzw. ausgehenden Kanten gelöscht werden.
Vielen Dank vorab.