Due to the nature of coding, I find it to be greatly beneficial to learn through a variety of formats. Some people have asked me to recommend books to them, the following are a list of books that I would highly recommend, some are free as PDF’s, but are also available for purchase. Also, books are not listed in any particular order.
For the record I will never promote any books that I have not read in part or in full
This book does a great job at covering the basics of java in a succinct fashion that still feels complete. This book makes a HUGE number of comparisons between C++ and Java, which might prove itself interesting to my students in both classes.
Effective Java is a wonderful book that covers java in a way that highlights what you need to know. This book is great for skimming, but might prove to be a little verbose to read all the way through. The author makes use of bold / highlighting in order to draw your attention to key terms throughout the text, and encourages skimming through the book a few times rather than reading it outright.
For those of you that read thinking in C++, this is very similar in writing style, but different in approach. Still there are the C-style solutions to java problems, but without the nagging feeling that the author is trying to make a book about C or C++ instead of Java. I have brought this book on a countless number of train rides and seem to learn something new from it every time I pick it up.