I'm writing this, because I tried to learn
and really understand the concepts of
Java for quite some time. I started as most of the folks here probably did, I downloaded some web tutorials, I visited a couple of web resources, then I decided to go for some good books. Although there are really great books out there and most of them merely worked as references, I never really had the feeling to
understand all the concepts in-depth.
This has changes dramatically when I had finished a book called "Head First Java".
For the first time (since years) I now have the feeling to really understand all the key concepts and I managed to deep-dive into Java programming without the need to memorize all those API methods, etc.
I hope this is not off-topic, but if anybody wonders how to start learning Java I recommend the following:
1. Buy and read "Head First Java". It's a very uncommon book. It's not one of those "just another nutshell book about Java" type of book. Read it. It might take you 5-10 days.
2. Having finished reading "Head First Java", go for one of the usual references, maybe one from O'Reilly. Having read "Head First" you will find it exceptionally easy to run through standard Java books.
3. Start programming.
I hope this is not too off-topic, but I got really surprised by what I have been able to learn and understand for the first time even after heaving read so many Java references and guides. So I thought this might be of any help for other "newbies".
Regards
Ralf