For the second of my required posts for my Java class, I might as well mention one of the reasons why I like Java.
I've tried C++ (as Programming Fundamentals 1) and it was an incredibly complicated and difficult language. Prior to that I practiced a little bit of Java here and there and so far I've been reminded of what I noticed before; Java is a simple and easy language. I've been told it's not as powerful as C++ but I think that it's versatility more than makes up for any lack of power. I haven't delved into Java enough to know if maybe it does have the ability to build some really powerful programs but I have seen enough to know it's the language I want to focus on.
I think that you can assume that with java you may build powerful system (since there are such java powered by systems out of there) but don't underestimate java enviroment complexity just because its syntax (and sematics, i think )
is by far easier.
I tend to agree that programming in Java is much easier than programming in C++. This isn't necessarily down to the language syntax, but more the IDE environment. I've worked on one C++ application and many Java applications, all using Eclipse as the IDE. Things such as tab-completion, ctrl-click and syntax error highlighting all just work with Java projects, but were much more of a struggle to get working with C++.
On top of this, the compiler errors from gcc were often much less readable than the compiler errors from javac.
Now I admit I've never programmed C++ in visual studio and I hear that gives a much better experience, but if you're targeting and developing on Linux then it isn't an option.
As far as i know, visual studio c++ at the very end compiles your code to .net framework, so i can't see any advantage over using c#.Maybe with c++ in vstudio you may write unmanaged code more easily, but that's a niche programming.