Core Java 2 : - Horstmann, Cay S.