Java : an eventful approach - Bruce, Kim B. (Pearson Education, 2006)