Textbook:
none
Reference Books:
- The official Java tutorial by the original source
http://docs.oracle.com/javase/tutorial/index.html (link is external)
- Data Structures and Algorithms with Object-Oriented Design Patterns in Java by Preiss
A Data Structure and Algorithms book which is a bit theoretical but I am sure you can make it.
http://www.brpreiss.com/books/opus5/html/book.html (link is external) -
The Java Programming Language by Arnold, Gosling, Holmes
- Java Language and Virtual Machine Specifications by James Gosling, Bill Joy, Guy Steele