F.. the book, you need to start writing code while reading the book. Just reading the whole book won't mean that you can even code Java after you're done.
Also it will help you keep focused if you're going to code something useful not stuff like simple Math and IO methods... sure, you need to know how to do that, but why stop there.. ? Put some effort in it...
Lol when I first started i thought greifing is the whole point of game still remember how I was trying to steal glass and then fill back sand when admin saw me... didn't know how to smelt
You should implement Listener and then check in PlayerInteractEntityEvent(PlayerInteractEntityEvent playerInteractEntityEvent) which block was clicked and by who.