Skip to content

History and evolution of Java

Java was created by James Gosling, Mike Sheridan, and Patrick Naughton at Sun Microsystems in 1991. Initially called Oak (after an oak tree outside Gosling’s office), it was designed for interactive television and embedded systems. However, the project was too advanced for the cable TV industry at the time.

In 1995, the language was renamed Java (inspired by Java coffee) and re‑targeted for the emerging World Wide Web. The first public release, Java 1.0, promised “Write Once, Run Anywhere” (WORA) via the Java Virtual Machine (JVM).

Key milestones:

  • 1996 – Java 1.0 (first official release)
  • 1997 – Java 1.1 (inner classes, JavaBeans, JDBC)
  • 1999 – Java 2 (J2SE 1.2) with Swing, Collections framework
  • 2004 – Java 5 (generics, annotations, enum, enhanced for‑loop)
  • 2009 – Oracle acquires Sun Microsystems
  • 2014 – Java 8 (lambda expressions, Stream API, date/time API)
  • 2017 – Java 9 (modules, JShell)
  • 2018 – Java 11 (LTS, first Oracle release with new licensing)
  • 2021 – Java 17 (LTS, sealed classes, pattern matching)
  • 2023 – Java 21 (LTS, virtual threads, record patterns)
  • 2025 – Java 24 (Stream Gatherers, Class-File API, quantum-resistant cryptography)
  • 2025 – Java 25 (LTS, latest long-term support release, compact object headers, AOT improvements)
  • 2026 – Java 26 (HTTP/3 client, G1 GC throughput improvements, final removal of Applet API)

Java evolved from a simple, platform‑independent language into a robust ecosystem powering enterprise, mobile, and cloud applications. With the six‑month release cadence established in 2017, Java continues to innovate rapidly while maintaining backward compatibility.