Java by dissection : the essentials of Java programming - Pohl, Ira. (Addison-Wesley, 2000)