I think it might be helpful if you study the
Observer pattern.
Java also offers a set of classes that implements this pattern: java.util.Observer and java.util.Observable.
These classes might help you implement the model-view-controller paradigm that you seem to be looking for.
Another option could be following the Java Beans convention for handling events. In other words make a JavaBean out of your classes, and by doing so, capable of handling and firing events when properties change.
Could this be helpful?
[ December 12, 2006: Message edited by: Edwin Dalorzo ]