First of all you have to get to know the principles of Java and object oriented programming in general (as it works different than C and other procedural languages). I learned about that from book by Ivor Horton (It's Wrox publishing I guess) but there are many others out there.
I already know C and I have to learn Java. Can anybody recommend an ebook I can read?
Don't get fancied by all the big big books you see. First get agood book thats easy to understand. Head First java is a very good book. Read it fully don't skip chapters, and do the exercises, that will be more than enough.