A callback usually refers to an event-oriented approach in which a listener registers in a particular class and returns back whenever an event occurs. For example, an event may correspond to the user by pressing a key or some data received via TCP.
EventListener. EventListener "" EventStream ( , addListener removeListener). , . , , , , .
public class EventStream {
private final List<EventListener> listeners = new CopyOnWriteArrayList<EventListener>();
public void start() {
Thread t = new Thread(...);
t.start();
}
protected void fireEventReceived(Event e) {
for (EventListener l : listeners) {
l.eventReceived(e);
}
}
}