Java is a programming language, and platform for programming, applications, and Web software, from Sun Microsystems.
As a language, it is strictly object-oriented, aggressively platform-independent, self documenting, inherently multithreaded, security conscious, and garbage collected, with a rich standard library, including Internet communications, windowing graphics (AWT, Swing), and SQL database interface (JDBC). Java is closely related to C, but intentionally lacks many of the features of C++, namely multiple inheritance, operator overloading, and any explicit pointers. These exclusions are done specifically to make it a simpler language, and they seem to work. Many programmers choose to program in Java just to be more productive. Some programming instructors teach introductory courses to C++ by first using Java, and then, after students learn how to program, the move to C++, to save time and aid student comprehension; both languages can be taught in the time often needed for C++ alone.
As a platform, Java is compiled into still platform-independent bytecodes, then interpreted on each machine; interpreters, using virtual machines (VMs), for most computer types are widely available. This lets portable programs be written on any one of many computer architectures, with the slogan: "Write Once Run Anywhere". One powerful example of this is Java Applets, Java programs embedded in a Web page, downloaded by the Web browser, and executed on the user's computer. Java's inherent security minimizes the risks of running an untested, untrusted program, and platform independence lets most computers execute it. The Mozilla, Netscape Navigator, and Microsoft Internet Explorer Web browsers, among many others, can run Java applets.
But there's more. Sun has even wider goals for Java, including marketing it as a language for embedded systems, making it a standard for cross-platform object-oriented program communication, and possibly challenging the Microsoft Windows dominance of operating systems (OSs). The precedent of the JDK, Java interpreter/compiler packages, being free for download for most OSs from Sun and others, along with most of the source code, as well as the promise of platform independence, has spawned much interest in Java as part of the Open Source software movement. Many applets and even full applications are also downloadable free, with source code. Also available: compilers to translate from other languages to platform independent Java bytecode, decompilers to convert Java bytecode to readable Java, and obfuscators, to hinder them. All are popular categories.
This directory category intends to cover all of that. Ambitious goal, no? :-)