This is going to be a short one. Beware! Coding book recommendations ahead.
Before deep diving into Effective Java which is an extremely good book, I would recommend taking a look at this one! Yep Head First and this is not only because the lady on the cover is looking at you with a hidden (and fake) lust taken from the last few seconds of a porn clip, but because after you learn Java you need some tools to identify common patterns in the codebases you will be working on plus its easy and fun to read despite of its 650something pages.
Do not loose time with more complex reading before having read this one.
I am also trying to implement my own version of those patterns as I go along with the book (I skipped the first one but I might come back and do it later).
This is the GitHub repo.
(pause) Oh god! now I have mentally connected github with Microsoft. I hope this won’t happen (end of pause)