My friend told me that, if u know C++, u need only 1 month to learn JAVA, but if u know JAVA, u need half year to learn C++. |
Unfortnately, that's pretty un-true. While you can learn the base language syntax, that is going to be useless without understanding the libraries provided with the SDK and further concepts.
C++ is multi-purpose language, u can use it to design desktop applications, games etc., JAVA is best for web development, embedded systems etc.. |
You can do desktop applications, games in Java too. C is actually probably the best for Embedded systems so I have nfi what you are on about.
Short answer is C/C++ is harder to learn, more difficult to use, and more dangerous than Java, but also faster, more efficient, more cryptic to learn, but more valuable to know. |
Also crap.
+1 to Umz. Best answer so far.
Java has become very geared towards the enterprise crowd. There are some awesome tools, application servers and libraries provided with Java.
C++ on the other-hand has a very loose standard. There is no standardized platform, libraries/tools or Graphical frameworks for the language. So you'd spend as much time, if not more becoming familiar with 3rd party tools like Boost and QT/WxWidgets etc to perform tasks that would be provided as part of the Java language libraries natively.
That being said. C++ does have a performance advantage of 10-20% (if you write decent code) over Java because it's compiled and not interpreted through a runtime engine.
You should pick the language that will best suit you in the long term. If you wanna get into programming highly optimised applications for financial sectors, or video games then C++ is an ideal language.
If you wanna develop applications for large companies, web-services and huge scalable applications with >1,000+ clients then Java is going to be a better long-term decision.
My 0.02c.