La documentación del lenguaje de Sun. Por mi experiencia, te diré que al final el mejor recurso es la documentación del fabricante, exceptuando casos muy puntuales que resolverás preguntando en foros especializados. El Thinking in Java es un buen libro, y desde que se distribuye libremente es un recurso interesante, pero no aporta nada que no encuentres en la documentación oficial (más allá de algún ejemplo más currado, que es donde los libracos suelen ganarse lectores).