Computer Science Canada C++ and Java |
Author: | Raknarg [ Wed May 18, 2011 7:31 pm ] |
Post subject: | C++ and Java |
This is probs a noobish question, but are Java and C++ mostly the same? I've seen a lot of code for both of them and they seem to use basically the same syntax. |
Author: | mirhagk [ Wed May 18, 2011 10:44 pm ] |
Post subject: | RE:C++ and Java |
very similar in syntax, yes, in execution and the way code is compiled/run no. Java runs on a virtual machine, meaning one java program can be run on any computer, while C++ is compiled for a specific computer, meaning you'll recompile for each computer, but it also gives it a performance boost. Also how they deal with errors and things are different. But yes, the syntax is much the same. |
Author: | DemonWasp [ Thu May 19, 2011 12:37 am ] |
Post subject: | RE:C++ and Java |
The syntax is largely similar. However, everything else is different. In Java, you have automatically-managed memory, with manual allocation and automated freeing. In C++, you must manually allocate and free memory. Java is compiled against the JVM, a specification of a virtual machine. In C++, you compile against a given description of a machine + operating system combination. Compiling C++ programs on Linux is different from compiling them for Windows or OSX or BSD or AIX or HP/UX or... Java has native libraries for an awful lot of things that C++ has a...variety...of libraries for. Java has language-level support for multithreading and concurrent programming...C++ has pthreads and whatever the library on the Windows side is. Java has Sockets, C++ has either the UNIX sockets library or WinSOCK, depending on OS. C++ is typically slightly faster. However, the gap is definitely closing and there are cases where Java is faster. The comparison depends largely on which C++ compiler is used, which JRE is used, and the skill of the programmer for each language. There's actually a fair bit of syntax that's very different between the two languages, but you need to have a little experience with both to know what they are. |