Java definition
<programming, language, portability> (After the Indonesian island, a
source of programming fluid) A simple, object-oriented,
distributed, interpreted, robust, secure,
architecture-neutral, portable, multithreaded, dynamic,
buzzword-compliant, general-purpose programming language
developed by Sun Microsystems in the early 1990's (initially for
set-top television controllers), and released to the public in 1995.
Java first became popular by being the earliest portable
dynamic client-side content for the World-Wide Web in the
form of platform-independent Java "applets". In the late
1990's and into the 2000's it has also become very popular
on the server side, where an entire set of APIs defines the J2EE.
Java is both a set of public specifications (controlled by
Sun Microsystems through the JCP) and a series of
implementations of those specifications.
Java is syntactially similar to C++ without user-definable
operator overloading, (though it does have method
overloading), without multiple inheritance, and extensive
automatic coercions. It has automatic garbage collection.
Java extends C++'s object-oriented facilities with those
of Objective C for dynamic method resolution.
Whereas programs in C++ and similar languages are compiled
and linked to platform-specific binary executables, Java
programs are typically compiled to portable architecture-neutral
bytecode or ".class" files, which are run using a Java
Virtual Machine. The JVM is also called an interpreter,
though it is more correct to say that it uses Just-In-Time
Compilation to convert the bytecode into native machine
code, yielding greater efficiency than most interpreted
languages, rivalling C++ for many long-running, non-GUI
applications. The run-time system is typically written in
POSIX-compliant ANSI C or C++. Some implementations
allow Java class files to be translated into native
machine code during or after compilation.
The Java compiler and linker both enforce strong type
checking - procedures must be explicitly typed. Java
supports the creation of virus-free, tamper-free systems
with authentication based on public-key encryption.
Java has an extensive library of routines for all kinds of
programming tasks, rivalling that of other languages.
For example, the "java.net} package supports TCP/IP
protocols like HTTP and FTP. Java applications can
access objects across the Internet via URLs almost as easily as
on the local file system. There are also capabilities for
several types of distributed applications.
The Java GUI libraries provide portable interfaces. For example,
there is an abstract Window class and implementations of it
for Unix, Microsoft Windows and the Macintosh.
The "java.awt" and "javax.swing" classes can be used either in
Web-based "Applets" or in client-side or "desktop" applications.
There are also packages for developing XML applications,
web services, servlets and other web applications,
security, date and time calculations and I/O formatting,
database (JDBC), and many others.
Java is not directly related to JavaScript despite the name.
Home.
Usenet newsgroup: comp.lang.java.
(2005-01-21)
Nearby terms:
japh « jar « Jargon File « Java » Java 2 » Java 2 Platform » Java 2 Platform, Enterprise Edition
|