bscodinglab

History

Java is a versatile, object-oriented programming language that was first released by Sun Microsystems (acquired by Oracle Corporation in 2010) in 1995. Its development started in 1991 by James Gosling, Mike Sheridan, and Patrick Naughton, who were working on a project named “Green” at Sun Microsystems. The language was initially designed for use in embedded systems but quickly evolved to become one of the most popular programming languages for a wide range of applications, including web development, enterprise software, mobile applications, and more.

Here is a table with the major versions and their release dates:

Version Release Date Notable Features and Changes
Java 1.0
January 23, 1996
Initial release of Java with the core features of the language.
Java 1.1
February 19, 1997
Inner classes, JavaBeans, JDBC, RMI, and more API enhancements.
Java 1.2
December 8, 1998
Introduction of the Java 2 Platform, Standard Edition (J2SE). Swings API, Collections Framework, and JIT (Just-In-Time) compiler.
Java 1.3
May 8, 2000
HotSpot JVM, Java Sound API, JPDA (Java Platform Debugger Architecture).
Java 1.4
February 6, 2002
Assertions, Regular Expressions, NIO (New I/O) package, Logging API.
Java 5
September 30, 2004
Generics, Enhanced for loop, Autoboxing, Annotations, Varargs, Enum.
Java 6
December 11, 2006
Scripting API, JAXB, Java Compiler API, Pluggable Annotations, GUI enhancements.
Java 7
July 28, 2011
Switch statement with Strings, Try-with-resources, Diamond Operator, Fork/Join Framework, NIO.2.
Java 8
March 18, 2014
Lambda expressions, Stream API, Date and Time API (JSR 310), Nashorn JavaScript Engine.
Java 9
September 21, 2017
Module system (Project Jigsaw), JShell (Java REPL), improved Stream API, and more.
Java 10
March 20, 2018
Local variable type inference (var keyword), Application Class-Data Sharing (CDS)
Java 11
September 25, 2018
Launch Single-File Source-Code Programs, HTTP Client API, Epsilon Garbage Collector.
Java 12
March 19, 2019
Switch Expressions (Preview), Shenandoah Garbage Collector (Experimental).
Java 13
September 17, 2019
Text Blocks (Preview), ZGC Garbage Collector (Experimental).
Java 14
March 17, 2020
Records (Preview), Pattern Matching for instanceof (Preview), NUMA-Aware Memory Allocation.
Java 15
September 15, 2020
Sealed Classes (Preview), Hidden Classes (Preview), ZGC Concurrent Thread-Stack Processing.
Java 16
March 16, 2021
Records, Pattern Matching for instanceof, Vector API, Foreign Function & Memory API (Incubator).
Java 17
September 14, 2021
Sealed Classes, Pattern Matching for switch, Strongly Encapsulate JDK Internals.

Please note that the above table covers only the major releases of Java, and there are also minor updates and patch releases in between. Java is an ever-evolving language, and Oracle and the Java community continue to work on improvements, enhancements, and new features in subsequent versions.