English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
All categories

2006-07-24 21:58:12 · 4 answers · asked by shanthi v 1 in Computers & Internet Programming & Design

4 answers

I have never heard it called a "neutral" language. I have, however, heard people call Java a "platform-neutral" language. Meaning that it is designed to operate on any platform (operating system, windowing system, hardware chipset, etc.) in pretty much the same way. This allows you to write code that will run on a wide variety of platforms, from cell-phones and pdas to supercomputers.

ASIDE TO rawlyn: Java "operates" well enough for me. For over 8 years now I have made a pretty good living (low six figures, US$) writing java code on cheap PCs that runs without change (and without error) on very expensive high-end multiprocessor Linux/Unix servers.

But I have a college buddy who is doing even better (high six figures, US$). He writes JavaME games on his Mac that he sells to PDA and cell phone subscribers.

Now that's my kind of "operating"!!

2006-07-25 12:21:28 · answer #1 · answered by BalRog 5 · 1 0

The heart of the Java Platform is the concept of a common "virtual" processor that executes Java bytecode programs. This bytecode is the same no matter what hardware or operating system the program is running under. The Java Platform provides an interpreter called the Java Virtual Machine, or JVM, which translates the Java bytecode into native processor instructions at run-time. This permits the same application to be run on any platform that has a virtual machine available.

Since JRE version 1.2, Sun's JVM implementation has also included a just-in-time compiler. Instead of interpreting the bytecode one instruction at a time, this converts the bytecode for a program into equivalent native machine code as the program is loaded into the virtual machine, causing it to execute much faster at the cost of a small delay whenever new bytecode is loaded. This allows the JIT compiler to target a specific host platform and hardware, even potentially optimizing the output code in different ways based on observations of the program's behaviour.

This is not to say that one can truly compile Java code to its fullest extent (in order to reap the benefits of speedy native machine code). Yes, there are "compilers" available that will attempt this feat, but not all Java libraries have a machine code equivalent. For instance, the "reflect" library, which allows Java programmers to delve into instructions only available at runtime, is not well represented (if at all) by machine code.

Java was not the first virtual-machine-based platform, though it is by far the most successful and well-known. Previous uses for virtual machine technology primarily involved emulators to aid development for not-yet-developed hardware or operating systems, but the JVM was designed to be implemented entirely in software, while making it easy to efficiently port an implementation to hardware of all kinds.

2006-07-28 04:18:11 · answer #2 · answered by ihoston 3 · 2 0

Because a program written in Java is crossplatform, meaning it will operate on any OS without modification eg XP, Vista, Mac OSX, Unix, Linux. OK? Ideal for writing internet apps

2006-07-25 05:05:02 · answer #3 · answered by Anonymous · 2 0

We of course use the term "operate" loosely here...

2006-07-25 05:26:46 · answer #4 · answered by Anonymous · 0 2

fedest.com, questions and answers