Java is an object-oriented programming language with a high level of abstraction and as few implementation dependencies as possible. It is a general-purpose programming language that allows application developers to write once and run anywhere (WORA), which means that compiled Java code can operate on any platform that supports Java without the need to recompile. Java applications are usually compiled to bytecode, which may execute on any Java virtual machine (JVM), regardless of the computer architecture. Java has a syntax that is similar to C and C++, although it has less low-level features than any of these languages.
Traditional compiled languages lack dynamic capabilities (such as reflection and runtime code modification), which the Java runtime enables. According to GitHub, as of 2019, Java was one of the most popular programming languages in use, especially for client-server web applications, with 9 million developers.
Who developed it?
James Gosling created Java at Sun Microsystems (which has since been acquired by Oracle) and it was first released in 1995 as a core component of Sun Microsystems’ Java platform. Sun originally published the original and reference implementation Java compilers, virtual machines, and class libraries under a private licence. Sun had relicensed most of its Java technology under the GPL-2.0-only licence as of May 2007, in accordance with the Java Community Process guidelines.
The official reference implementation is the OpenJDK JVM, which is free open source software and is the default JVM for almost all Linux distributions. Oracle offers its own HotSpot Java Virtual Machine, but the official reference implementation is the OpenJDK JVM, which is used by most developers and is the default JVM for almost all Linux distributions.
The most recent version is Java 16, which was published on September 25, 2018, and is currently supported long-term support (LTS). For commercial usage, Oracle published the last zero-cost public update for Java 8 LTS in January 2019, however it will continue to support Java 8 with public updates for personal use indefinitely. Other vendors have started to offer free OpenJDK 8 and 11 builds that are still getting security and other updates.
Because of substantial risks posed by unresolved security problems, Oracle (and others) strongly advise uninstalling obsolete versions of Java. Oracle urges customers to upgrade to the newest version (currently Java 16) or an LTS release as soon as possible because Java 9, 10, 12, 13, 14, and 15 are no longer supported.
History Versions of Java ( Programming Language)
In June 1991, James Gosling, Mike Sheridan, and Patrick Naughton started the Java language project. Java was created for interactive television, but at the time, it was too advanced for the digital cable television industry. Oak was the name given to the language after an oak tree that stood outside of Gosling’s office. Later, the project was known as Green before being renamed Java, after a variety of coffee from Indonesia. Gosling created Java with a C/C++-style syntax that would be recognisable to system and application programmers.
In 1996, Sun Microsystems released Java 1.0, the first public implementation. It offered Write Once, Run Anywhere (WORA) functionality, as well as free run-times for popular platforms. It offered network and file access controls and was fairly secure, with customizable security. Java gained popular once major web browsers included the ability to execute Java applets within web pages. Arthur van Hoff rewrote the Java 1.0 compiler in Java to ensure full adherence to the Java 1.0 language specification.
With the introduction of Java 2 (first released as J2SE 1.2 in December 1998 – 1999), new versions included multiple settings for various systems. J2EE comprised technology and APIs for corporate applications that normally operate on servers, whereas J2ME focused on APIs for mobile apps. J2SE was given to the desktop version. Sun renamed new J2 versions as Java EE, Java ME, and Java SE, respectively, for marketing purposes in 2006.
Sun Microsystems attempted to codify Java in 1997 by approaching the ISO/IEC JTC 1 standards organisation and later the Ecma International, but it quickly withdrew from the process. The Java Community Process ensures that Java remains a de facto standard. Sun used to make most of their Java implementations available for free, despite the fact that they were proprietary software. Java brought substantial money for Sun by selling licences for specific products like the Java Enterprise System.
Sun released much of its Java virtual machine (JVM) as free and open-source software (FOSS) under the GPL-2.0-only licence on November 13, 2006. Sun completed the process on May 8, 2007, making all of its JVM core code available under free software/open-source distribution terms, with the exception of a small part of code that Sun did not own the copyright.
Rich Green, Sun’s vice president, stated that Sun’s ideal job in relation to Java was that of an evangelist. Oracle Corporation has described itself as the custodian of Java technology, with a relentless commitment to promoting a community of participation and transparency, following its acquisition of Sun Microsystems in 2009–10. This did not stop Oracle from initiating a lawsuit against Google for utilising Java in the Android SDK shortly after (see the Android section).
James Gosling resigned from Oracle on April 2, 2010. Oracle said in January 2016 that the browser plugin would be phased out in Java run-time environments based on JDK 9. Java software runs on a wide range of devices, including laptops, data centres, game consoles, and scientific instruments.