I don't think that helps my problem.
Let me make up an example. I have an object of a Person. A person has parents, and children, so in that sense I have a tree. So Person has an arraylist of Person objects to note their kids. Each Person object also has friends. So those objects could be scattered all over this "tree". When someone dies, I want to remove them totally from memory. I want the parent to remove the child from their array of children. (Don't worry about their children... this isn't the real example). When that happens, I want the dead person also removed from all the lists of friends.
If your post would solve my problem, please supply an example because I do not think it fits.