Progrmming With Java - John R Hubbard (Mc graw hill, 2001)