logo

Java-Versionsverlauf

JDK Alpha und Beta (1995)

Die Java Alpha und Beta waren die ersten Versionen, aber sie hatten äußerst instabile APIs und ABIs. Der mitgelieferte Java-Webbrowser erhielt den Namen WebRunner.

JDK 1.0 (23. Januar 1996)

Es war die erste stabile veröffentlichte Version von Java. Sein Codename war Eiche .Die erste stabile Version von JDK war JDK 1.0.2 und hieß Java 1.

Zimt vs. Mate

Bis JDK 1.0.1 konnten private und geschützte Schlüsselwörter zusammen verwendet werden, um eine weitere Form des Schutzes zu schaffen, der früher als Einschränkung für Methoden oder Variablen, hauptsächlich für Unterklassen einer bestimmten Klasse, fungierte. In JDK 1.0.2 wurde diese Funktion entfernt.

JDK 1.1 (19. Februar 1997)

In dieser Version waren einige Ergänzungen enthalten. d.h.

  • Das Konzept der Inneren Klasse
  • JavaBeans
  • JDBC
  • RMI
  • Das AWT-Eventmodell wurde komplett neu gestaltet.
  • Reflection (die nur Introspection unterstützte, eine Änderung war zur Laufzeit nicht möglich).
  • JIT-Compiler (Just In Time) auf Microsoft Windows-Plattformen, erstellt für JavaSoft von Symantec
  • Internationalisierung und Unicode-Unterstützung stammen von Taligent.

J2SE 1.2 (8. Dezember 1998)

Sein Codename war Spielplatz . Das erste Mal hieß es J2SE (Java 2-Plattform, Standard Edition) .Es ersetzte JDK, um die Basisplattform zu erkennen J2EE (Java 2-Plattform, Enterprise Edition) und J2ME (Java 2-Plattform, Micro Edition) .Es war eine sehr wichtige Java-Veröffentlichung, da sie die Größe der Java-Plattform auf 1520 Klassen in 59 Paketen verdreifachte.

In dieser Version waren einige Ergänzungen enthalten. d.h.

  • Java-Plugin
  • Java IDL, eine IDL-Implementierung für CORBA-Interoperabilität
  • Sammlungsrahmen
  • Die grafische Swing-API wurde in die Kernklassen integriert
  • Die JVM von Sun wurde erstmals mit einem JIT-Compiler ausgestattet

J2SE 1.3 (8. Mai 2000)

Sein Codename war Turmfalke . In dieser Version waren einige Ergänzungen enthalten. d.h.

  • HotSpot-JVM enthalten.
  • RMI wurde geändert, um optionale Kompatibilität mit CORBA zu unterstützen.
  • JNDI (Java Naming and Directory Interface).
  • Java Platform Debugger Architecture (JPDA) enthalten.
  • JavaSound.
  • Synthetische Proxy-Klassen.

J2SE 1.4 (6. Februar 2002)

Sein Codename war Merlin . Es war die erste Java-Plattform, die im Rahmen des Java Community Process veröffentlicht wurde.

In dieser Version waren einige Ergänzungen enthalten. d.h.

  • Verbesserte Bibliotheken.
  • Reguläre Perl-Ausdrücke enthalten.
  • Bereitstellung einer Ausnahmeverkettung (Ermöglicht einer Ausnahme, die ursprüngliche Ausnahme einer niedrigeren Ebene zu kapseln).
  • IPv6-Unterstützung (Internet Protocol Version 6).
  • Protokollierungs-API (spezifiziert in JSR 47.)
  • Bild-I/O-API zum Lesen und Schreiben von Bildern in Formaten wie JPEG und PNG.
  • XML-Parser und XSLT-Prozessor integriert.
  • Sicherheits- und Kryptografieerweiterungen (JCE, JSSE, JAAS) integriert.

Support und Sicherheitsupdates für Java 1.4 endeten im Oktober 2008.

J2SE 5.0 (30. September 2004)

Sein Codename war Tiger. Ursprünglich hatte sie die Nummer 1.5, die immer noch als interne Versionsnummer verwendet wird. Daher wurde es auf 5.0 geändert, um „den Reifegrad, die Stabilität, die Skalierbarkeit und die Sicherheit von J2SE besser widerzuspiegeln“. Dieser Prozess wurde auch im Rahmen des Java Community Process veröffentlicht.

Support- und Sicherheitsupdates für Java 5.0 endeten am 3. November 2009, Updates standen zahlenden Oracle-Kunden jedoch bis Mai 2015 zur Verfügung.

J2SE 5.0 fügte einige wichtige neue Sprachfunktionen hinzu:

  • Es bietet (statische) Typsicherheit zur Kompilierungszeit für Sammlungen und macht die meisten Typumwandlungen überflüssig.
  • Verwendete Metadaten oder Anmerkungen.
  • Autoboxing/Unboxing.
  • Aufzählungen.
  • Für jede Schleife verbessert.
  • Verbesserte Semantik der Ausführung für Multithread-Java-Programme.
  • Statische Importe.

Auch bei den Standardbibliotheken gab es einige Verbesserungen:

  • Automatische Stub-Generierung für RMI-Objekte.
  • Swing: Es sorgte für ein dünnes Aussehen und Gefühl.
  • Die Parallelitätsdienstprogramme im Paket java.util.concurrent.
  • Scannerklasse zum Parsen von Daten aus verschiedenen Eingabeströmen und Puffern.

Java 5 war die letzte Version von Java, die offiziell die Microsoft Windows 9x-Reihe (Windows 95, Windows 98, Windows ME) unterstützte.

Windows Vista war die letzte Windows-Version, die J2SE 5 unterstützte, bevor es im Oktober 2009 auslief.

Java 5.0 ist die Standardversion von Java, die auf Apple Mac OS X 10.5 (Leopard) installiert ist. Java 6 kann installiert werden

Java SE 6 (11. Dezember 2006)

Sein Codename war Mustang . Nach der Veröffentlichung dieser Version ersetzte Java den Namen J2SE durch Java SE und entfernte die .0 aus der Versionsnummer.

In dieser Version waren einige Ergänzungen enthalten. d.h.

  • Die Unterstützung für ältere Win9x-Versionen wurde eingestellt.
  • Unterstützung für Skriptsprachen.
  • Generische API für enge Integration mit Skriptsprachen.
  • Verbesserte Webservice-Unterstützung.
  • JDBC 4.0-Unterstützung.
  • Verwenden Sie eine Java-Compiler-API, um einen Java-Compiler programmgesteuert aufzurufen.

Nach der Veröffentlichung von Java 6 veröffentlichte Sun zahlreiche Updates, um Fehler zu beheben.

Java SE 7 (28. Juli 2011)

Sein Codename war Dolphin. Es wurde am 7. Juli 2011 gestartet, wurde jedoch am 28. Juli 2011 für Entwickler verfügbar gemacht.

In dieser Version waren einige Ergänzungen enthalten. d.h.

  • JVM-Unterstützung für dynamische Sprachen.
  • Komprimierter 64-Bit-Zeiger.
  • Zeichenfolgen im Schalter hinzugefügt.
  • Automatisches Ressourcenmanagement in der Try-Anweisung.
  • Unterstriche sind in numerischen Literalen zulässig.
  • Binäre Ganzzahlliterale.
  • Verbesserte Typschnittstelle zum Erstellen einer generischen Instanz. (auch Diamantoperator genannt)
  • Verbessertes Fangen und Werfen. (mehrere Ausnahmen abfangen und mit verbesserter Typprüfung erneut auslösen)
  • Bereitgestellte Regelsätze für die Java-Bereitstellung.

Es war die Standardversion, die von April 2012 bis zur Veröffentlichung von Java 8 auf java.com heruntergeladen werden konnte.

Java SE 8 (18. März 2014)

Sein Codename war Spinne . Zwar wurden Codenamen eingestellt, aber der Codename Spinne ist unter Java-Entwicklern weit verbreitet.

Es enthält einige Funktionen, die für Java SE 7 vorgeschlagen, aber in Java SE 8 hinzugefügt wurden.

  • Unterstützung auf Sprachebene für Lambda-Ausdrücke.
  • Ermöglicht Entwicklern das Einbetten von JavaScript-Code in Anwendungen.
  • Annotation von Java-Typen.
  • Bereitgestellte Datums- und Uhrzeit-API.
  • Wiederholte Anmerkungen.
  • Starten von JavaFX-Anwendungen.
  • Entfernung der permanenten Generation.

Java SE 8 wird in Windows XP nicht unterstützt, aber nach dem JDK 8-Update 25 können wir es unter Windows XP installieren und ausführen.

Java 8 ist ab Oktober 2014 als Standardversion zum Herunterladen von java.com festgelegt.

Java SE 9 (21. September 2017)

Im Jahr 2016 besprach Oracle einige Funktionen, die in Java 9 veröffentlicht werden sollten. Es wurde gehofft, dass Java 9 eine bessere Unterstützung für Multi-Gigabyte-Heaps, eine bessere native Code-Integration, einen anderen Standard-Garbage Collector und eine sich selbst optimierende JVM umfassen würde. Die Veröffentlichung von Java 9 wurde viele Male verschoben und schließlich wurde es am 21. September 2017 veröffentlicht.

Es enthält einige spezifische Funktionen:

Ansichten und Tabellen
  • Modularisierung des JDK unter Project Jigsaw.
  • Bereitgestellte Geld- und Währungs-API.
  • Enge Integration mit JavaFX.
  • Java-Implementierung reaktiver Streams.
  • Weitere Parallelitätsaktualisierungen.
  • Bereitgestellter Java-Linker.
  • Automatische Skalierung und Größenanpassung.

Java SE 10 (20. März 2018)

Java SE 10 wurde veröffentlicht, um primitive Datentypen zu entfernen und auf adressierbare 64-Bit-Arrays umzusteigen, um große Datenmengen zu unterstützen. Es wurde am 20. März 2018 veröffentlicht und zwölf neue Funktionen bestätigt. Diese Funktionen sind:

  • Typinferenz lokaler Variablen
  • Experimenteller Java-basierter JIT-Compiler Dies ist die Integration des dynamischen Graal-Compilers für die Linux x64-Plattform
  • Gemeinsame Nutzung von Anwendungsklassen-Daten Dadurch können Anwendungsklassen im gemeinsam genutzten Archiv platziert werden, um den Start und den Speicherbedarf von Java-Anwendungen zu reduzieren
  • Zeitbasierte Release-Versionierung
  • Paralleler vollständiger GC für G1
  • Garbage-Collector-Schnittstelle
  • Zusätzliche Unicode-Sprach-Tag-Erweiterungen
  • Stammzertifikate
  • Thread-lokale Handshakes
  • Heap-Zuweisung auf alternativen Speichergeräten
  • Entfernen Sie das Native-Header-Generierungstool – javah
  • Konsolidieren Sie die JDK-Gesamtstruktur in einem einzigen Repository

Java SE 11

Es ist derzeit zur Fehlerbehebung geöffnet.