How java is platform independent?

Answer Posted / steve

Java was designed to not only be cross-platform in source
form like C, but also in compiled binary form. Since this is
frankly impossible across processor architectures Java is
compiled to an intermediate form called byte-code. A Java
program never really executes natively on the host machine.
Rather a special native program called the Java interpreter
reads the byte code and executes the corresponding native
machine instructions. Thus to port Java programs to a new
platform all that is needed is to port the interpreter and
some of the library routines. Even the compiler is written
in Java. The byte codes are precisely defined, and remain
the same on all platforms.

The second important part of making Java cross-platform is
the elimination of undefined or architecture dependent
constructs. Integers are always four bytes long, and
floating point variables follow the IEEE 754 standard for
computer arithmetic exactly. You don't have to worry that
the meaning of an integer is going to change if you move
from a Pentium to a PowerPC. In Java everything is guaranteed.

However the virtual machine itself and some parts of the
class library must be written in native code. These are not
always as easy or as quick to port as pure Java programs.

Is This Answer Correct ?    4 Yes 1 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

What is object data type?

789


Can you give few examples of final classes defined in java api?

800


What is the exception hierarchy in java?

741


How many bytes is 255 characters?

755


Who developed java?

771


What are three ways in which a thread can enter the waiting state in java programming?

923


Can you sort a list in java?

746


What are some alternatives to inheritance?

837


Does java set allow duplicates?

785


Where is singleton pattern used?

757


What is the role of the java.rmi.naming class?

754


What is a variable declaration?

770


What is scope of a variable?

846


What ide should I use for java?

739


Explain naming conventions for packages?

785