i was think about learning to code bukkit plugins where would the best place to learn how to code java (not javascript)
a lot of useful information about creating your own bukkit plugin can be found on the bukkit wiki. http://wiki.bukkit.org/Main_Page
Learning any programming language straight from a book is a terrible idea. Find some decent tutorials online and dive right in. Look at other projects' code and learn from it.
I know codeacademy had a lot of different coding games and stuff like that. I hear they are really useful. http://www.codecademy.com/