Program and problem solving with java - Dale (Jones and Bartlett Publishers, 2008)