THE JAVA PROGRAMMING LANGUAGE - ARNOLD. K. GOSLING, J. HOLMES. D. (ADDISON WESLEY, 2000)