Java: An Eventful Approach