Java: The Complete Reference, Thirteenth Edition - Herbert Schildt