Answer Posted / blue arkos
Java is interpreted. This means that java source code is
compiled once, but it has to be interpreted by the JVM (Java
Virtual Machine) everytime the programme is executed. On the
other hand, C++ is not. C++ source code will compile once,
but it is NOT interpreted everytime the programme runs,
because C++ code is converted directly to machine language
instructions (in the machine that the C++ programme was
compiled). This is the reason why C++ is NOT portable.
Java is portable. This means that any Java programme can be
executed in any machine, provided that it has a JVM. C++
applications can only be executed in the machine in which
they were created (or in some cases, in similar machines
e.g. a C++ application that was writen in a computer under
the Windows XP Operating System, it will probably run in
other computers with Windows XP and maybe in computers with
other Windows versions, but certainly not in a cell phone).
That's why Java programmes are slower. They have to be
interpreted at runtime and this yields some overhead. This
is the efficiency - portability trade-off. Java applications
are portable, but C++ applications are executed faster.
Finally, there are some ways to overcome this trade-off from
both languages' point of view, but this is not the subject
of the question.
| Is This Answer Correct ? | 4 Yes | 1 No |
Post New Answer View All Answers
what is comparable and comparator interface?
What is bubble sort in java?
What is the private method modifier?
Is treeset sorted in java?
What is another word for methodology?
What is difference between variable declaration and definition?
Why do I need to declare the type of a variable in java?
How many bytes is 255 characters?
What is string value?
What are basic data types?
What is the dot operator?
How does java pattern compile work?
What is java reflection api?
What is meant by vector class, dictionary class, hash table class, and property class?
What is a protected method?