Category:Java: Difference between revisions

Content added Content deleted
m (Cleaned up a bit, apparently hyphens are a problem for people.)
(Fixed all misconceptions (YOUR WELCOME))
Line 1: Line 1:
{{language|Java}}The '''Java''' programming language, developed by [[Sun Microsystems]], is a language aimed at allowing high-performance, cross-platform application development.
{{language|Java}}The '''Java''' programming language, developed by [[Sun Microsystems]], is a language aimed at allowing "high-performance", virtual application development.


Java source files (.java files) are typically [[Compiler|compiled]] to an intermediate [[bytecode]] language (.class files) and executed by a [[Java Virtual Machine]]. Most modern JVMs further compile the bytecode into your processor's native machine code during execution. This native code translation is done via a [[Just-In-Time|JIT]] compiler that is built in to the JVM. Some Java compilers (such as [[GCJ]]) can compile Java code to native machine code ahead-of-time rather than just-in-time.
Java source files (.java files) are typically [[Compiler|compiled]] to an intermediate [[bytecode]] language (.class files) and executed by a [[Java Virtual Machine]]. Most modern JVMs further compile the bytecode into your processor's native machine code during execution. This native code translation is done via a [[Just-In-Time|JIT]] compiler that is built in to the JVM. Some Java compilers (such as [[GCJ]]) can compile Java code to native machine code ahead-of-time rather than just-in-time.
Line 5: Line 5:


The primary benefits of Java are:
The primary benefits of Java are:
* Cross-[[platform]] (Write Once, Run Anywhere)
* Cross-[[platform]] (Write Once, Run Anywhere (if all of the libraries are ported))
* High performance (Java code running with a modern JIT is often comparable to the speed of [[C++]])
* Comprehensive class library (which is very well [http://java.sun.com/javase/reference/api.jsp documented])
* Comprehensive class library (which is very well [http://java.sun.com/javase/reference/api.jsp documented])
* [[garbage collection|Automatic memory management]]
* [[garbage collection|Automatic memory management]] (So users don't have to learn memory management)
* Huge user community
* Huge user community
* Well supported by the [[open source]] community and commercial industry ([[Sun Microsystems|Sun]], [[IBM]], [[Oracle]], HP, BEA, [[Mac OS X|Apple]], etc.)
* Well supported by the [[open source]] community and commercial industry ([[Sun Microsystems|Sun]], [[IBM]], [[Oracle]], HP, BEA, [[Mac OS X|Apple]], etc.)


The primary flaws of Java are:
* "High performance" (Java code running with a modern JIT is NOT comparable to the speed of efficient [[C++]])
* Not compiled (Allowing for super-duper speed?)
* "You acknowledge that Software is not designed, licensed or intended for use in the design, construction, operation or maintenance of any nuclear facility." -See the EULA



Java is used in a variety of environments including desktop applications, embedded device (PDA and wireless phone) applications, server-side web page serving applications (as [[Java Server Pages|JSP]]), and applets embedded in web pages.
Java is used in a variety of environments including desktop applications, embedded device (PDA and wireless phone) applications, server-side web page serving applications (as [[Java Server Pages|JSP]]), and applets embedded in web pages.