Why Java is a platform independent language?

Answer Posted / rani

Java solves the problem of platform-independence by using
byte code. The Java compiler does not produce native
executable code for a particular machine like a C compiler
would. Instead it produces a special format called byte
code. Java byte code written in hexadecimal, byte by byte,
looks like this:

CA FE BA BE 00 03 00 2D 00 3E 08 00 3B 08 00 01 08 00 20 08

This looks a lot like machine language, but unlike machine
language Java byte code is exactly the same on every
platform. This byte code fragment means the same thing on a
Solaris workstation as it does on a Macintosh PowerBook.
Java programs that have been compiled into byte code still
need an interpreter to execute them on any given platform.
The interpreter reads the byte code and translates it into
the native language of the host machine on the fly. The most
common such interpreter is Sun's program java (with a little
j). Since the byte code is completely platform independent,
only the interpreter and a few native libraries need to be
ported to get Java to run on a new computer or operating
system. The rest of the runtime environment including the
compiler and most of the class libraries are written in Java.

All these pieces, the javac compiler, the java interpreter,
the Java programming language, and more are collectively
referred to as Java.

Is This Answer Correct ?    118 Yes 34 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

What is stringreader?

707


What is difference between adapter class and listener?

699


Explain java coding standards for methods?

808


What is the size of an array?

771


What is the purpose of a default constructor?

825


Explain about the main() method in java?

798


What does jre stand for?

804


What is a parameter in a function?

740


What is the use of conditional statement?

740


What are static variables and functions?

825


What is a lightweight component?

791


What are facelets templates?

788


Can you run java program without main method?

794


In a program, initializing an array of 100 KB is throwing an out of memory exception while there is 100 MB of memory available. Why?

773


What is a Transient Object?

826