Event-driven design has been around for quite some time. Within Java, both AWT (Abstract Window Toolkit) and Swing are based on an event model. Java provides the classes EventQueue, AWTEvent, ...
Support for generics has been a long requested enhancement. It eliminates the need to use casts to change the type of a referenced object. Previously, Java collections were typically created to hold ...