I learned some C on my own and I've finished one semester of Java programming. OO programming takes a different approach to problems. I want to know which book will help me pick up the OO aspects of Java.
So I've looked through Stack Overflow and two books have come up several times: Head First Java and Head First Object Oriented Analysis and Design. Now I already know some Java, and I'll be picking up a good bit more in my 2nd class. Yet, Head First Java is the one that is recommended for learning OO programming.
It's a difficult decision! I don't want to read a book that'll teach me how to write a "hello world" program in Java. Yet, I don't want to jump into OOA&D without all my foundations. Would OOA&D provide me with the foundations, or does it assume a certain level of understanding?