The Java programming language - Arnold, Ken ; Gosling, James & Holmes, David (Addison-Wesley, Boston, 2000)