By using this site, you agree to our Privacy Policy and our Terms of Use. Close

Starting in Java you'll take for granted some low level issues (mainly memory management) that the language/environment will take care of for you.
When you later (if?) you'll jump to C or C++ you will discover that you have no help from the language to solve those issues, and a less direct help from the libraries you'll use. These issues are the causes of most bugs that can be found in C/C++ code.

On the other hand, starting with Java you'll learn much faster the higher level concepts of many useful algorithms and object-oriented programming. I think you will be more able to cope with additional hoops to jump through _after_ you've been broken into coding rather than being overwhelmed with details at first and losing sight of the forest for the trees.

The only concession I would make is that while you're studying Java (or C#) you could look at other sources enough to realize the issues you're _not_ encountering, without going too deep into their details. They will come as a less nasty surprise later on :)



"All you need in life is ignorance and confidence; then success is sure." - Mark Twain

"..." - Gordon Freeman