JDK alpha et bêta (1995)
Java Alpha et Beta étaient les premières versions, mais elles ont des API et des ABI très instables. Le navigateur Web Java fourni s'appelait WebRunner.
JDK 1.0 (23 janvier 1996)
Il s’agissait de la première version stable de Java. Son nom de code était Chêne .La première version stable du JDK était JDK 1.0.2 et s'appelait Java 1.
Jusqu'au JDK 1.0.1, les mots-clés privés et protégés pouvaient être utilisés ensemble pour créer encore une autre forme de protection qui servait de restriction aux méthodes ou aux variables, principalement aux sous-classes d'une classe donnée. Dans JDK 1.0.2, cette fonctionnalité a été supprimée.
JDK 1.1 (19 février 1997)
Certains ajouts ont été inclus dans cette version. c'est à dire.
- Le concept de classe intérieure
- JavaBeans
- JDBC
- IRM
- Le modèle d’événement AWT a été totalement repensé.
- Réflexion (qui prenait en charge uniquement l'introspection, la modification n'était pas possible au moment de l'exécution).
- Compilateur JIT (Just In Time) sur plateformes Microsoft Windows, produit pour JavaSoft par Symantec
- Internationalisation et support Unicode provenant de Taligent.
J2SE 1.2 (8 décembre 1998)
Son nom de code était Cour de récréation . La première fois, ça s'appelait J2SE (plateforme Java 2, édition standard) .Il a remplacé JDK pour reconnaître la plateforme de base de J2EE (plateforme Java 2, édition Enterprise) et J2ME (plateforme Java 2, édition Micro) .Il s'agissait d'une version Java très importante car elle triplait la taille de la plate-forme Java à 1 520 classes réparties dans 59 packages.
Certains ajouts ont été inclus dans cette version. c'est à dire.
- Plugin Java
- Java IDL, une implémentation IDL pour l'interopérabilité CORBA
- Cadre de collecte
- l'API graphique Swing a été intégrée aux classes principales
- La JVM de Sun a été équipée pour la première fois d'un compilateur JIT
J2SE 1.3 (8 mai 2000)
Son nom de code était Crécerelle . Certains ajouts ont été inclus dans cette version. c'est à dire.
- JVM HotSpot incluse.
- RMI a été modifié pour prendre en charge la compatibilité facultative avec CORBA.
- JNDI (interface de nommage et d'annuaire Java).
- Architecture de débogueur de plate-forme Java (JPDA) incluse.
- JavaSound.
- Classes proxy synthétiques.
J2SE 1.4 (6 février 2002)
Son nom de code était Merlin . Il s'agissait de la première plate-forme Java publiée dans le cadre du processus communautaire Java.
Certains ajouts ont été inclus dans cette version. c'est à dire.
- Bibliothèques améliorées.
- Expressions régulières Perl incluses.
- Chaînage d’exceptions fourni (il permet à une exception d’encapsuler l’exception originale de niveau inférieur).
- Prise en charge IPv6 (protocole Internet version 6).
- API de journalisation (spécifiée dans JSR 47.)
- API d'E/S d'image pour lire et écrire des images dans des formats tels que JPEG et PNG.
- Analyseur XML et processeur XSLT intégrés.
- Extensions de sécurité et de cryptographie (JCE, JSSE, JAAS) intégrées.
Le support et les mises à jour de sécurité pour Java 1.4 ont pris fin en octobre 2008.
J2SE 5.0 (30 septembre 2004)
Son nom de code était Tigre. Il portait à l'origine le numéro 1.5, qui est toujours utilisé comme numéro de version interne. Ainsi, il a été modifié en 5.0 pour « mieux refléter le niveau de maturité, de stabilité, d'évolutivité et de sécurité du J2SE ». Ce processus a également été publié dans le cadre du processus communautaire Java.
Le support et les mises à jour de sécurité pour Java 5.0 ont pris fin le 3 novembre 2009, mais les mises à jour étaient disponibles pour les clients Oracle payants jusqu'en mai 2015.
J2SE 5.0 a ajouté de nouvelles fonctionnalités linguistiques importantes :
- Il assure la sécurité des types (statiques) au moment de la compilation pour les collections et élimine le besoin de la plupart des transtypages.
- Métadonnées ou annotations utilisées.
- Autoboxing/unboxing.
- Énumérations.
- Amélioré pour chaque boucle.
- Sémantique d'exécution améliorée pour les programmes Java multithread.
- Importations statiques.
Il y a également eu quelques améliorations dans les bibliothèques standards :
- Génération automatique de stub pour les objets RMI.
- Swing : Il offrait un aspect et une sensation maigres.
- Les utilitaires de concurrence dans le package java.util.concurrent.
- Classe de scanner pour analyser les données de divers flux d'entrée et tampons.
Java 5 était la dernière version de Java à prendre officiellement en charge la gamme Microsoft Windows 9x (Windows 95, Windows 98, Windows ME).
Windows Vista était la dernière version de Windows prise en charge par J2SE 5 avant de prendre fin en octobre 2009.
Java 5.0 est la version par défaut de Java installée sur Apple Mac OS X 10.5 (Leopard). Java 6 peut être installé
Java SE 6 (11 décembre 2006)
Son nom de code était Mustang . Après la sortie de cette version, Java a remplacé le nom J2SE par Java SE et a supprimé le .0 du numéro de version.
Certains ajouts ont été inclus dans cette version. c'est à dire.- Suppression de la prise en charge des anciennes versions de Win9x.
- Prise en charge du langage de script.
- API générique pour une intégration étroite avec les langages de script.
- Prise en charge améliorée des services Web.
- Prise en charge de JDBC 4.0.
- Utilisez une API du compilateur Java pour appeler un compilateur Java par programme.
Après la sortie de Java 6, Sun a publié de nombreuses mises à jour pour corriger les bugs.
Java SE 7 (28 juillet 2011)
Son nom de code était Dolphin. Il a été lancé le 7 juillet 2011 mais a été mis à la disposition des développeurs le 28 juillet 2011.
Certains ajouts ont été inclus dans cette version. c'est à dire.
types d'ordinateurs
- Prise en charge JVM des langages dynamiques.
- Pointeur 64 bits compressé.
- Chaînes ajoutées dans le commutateur.
- Gestion automatique des ressources dans l'instruction try.
- Les traits de soulignement sont autorisés dans les littéraux numériques.
- Littéraux entiers binaires.
- Interface de type améliorée pour créer une instance générique. (également appelé opérateur diamantaire)
- Amélioration de la capture et du lancer. (attrapez plusieurs exceptions et relancez avec une vérification de type améliorée)
- Fourni des ensembles de règles de déploiement Java.
Il s'agissait de la version par défaut à télécharger sur java.com d'avril 2012 jusqu'à la sortie de Java 8.
Java SE 8 (18 mars 2014)
Son nom de code était Araignée . Bien que les noms de code aient été abandonnés, mais le nom de code Araignée est courant parmi les développeurs Java.
Il inclut certaines fonctionnalités proposées pour Java SE 7 mais ajoutées dans Java SE 8.
- Prise en charge au niveau linguistique des expressions Lambda.
- Autoriser les développeurs à intégrer du code JavaScript dans les applications.
- Annotation des types Java.
- API de date et d'heure fournie.
- Annotations répétitives.
- Lancement des applications JavaFX.
- Suppression de la génération permanente.
Java SE 8 n'est pas pris en charge sous Windows XP mais après la mise à jour 25 du JDK 8, nous pouvons l'installer et l'exécuter sous Windows XP.
Java 8 est défini comme version par défaut à télécharger sur java.com à partir d'octobre 2014.
Java SE 9 (21 septembre 2017)
En 2016, Oracle a discuté de certaines fonctionnalités à publier dans Java 9. On espérait que Java 9 inclurait une meilleure prise en charge des tas de plusieurs gigaoctets, une meilleure intégration du code natif, un garbage collector par défaut différent et une JVM à réglage automatique. La sortie de Java 9 a été reportée à plusieurs reprises et finalement elle est sortie le 21 septembre 2017.
Il comprend quelques fonctionnalités spécifiques :
- Modularisation du JDK sous Project Jigsaw.
- API d'argent et de devises fournie.
- Intégration étroite avec JavaFX.
- Implémentation Java de flux réactifs.
- Plus de mises à jour de concurrence.
- Lien Java fourni.
- Mise à l'échelle et dimensionnement automatiques.
Java SE 10 (20 mars 2018)
Java SE 10 a été publié pour supprimer les types de données primitifs et évoluer vers des tableaux adressables 64 bits pour prendre en charge de grands ensembles de données. Il a été publié le 20 mars 2018, avec douze nouvelles fonctionnalités confirmées. Ces fonctionnalités sont :
- Inférence de type de variable locale
- Compilateur JIT expérimental basé sur Java Il s'agit de l'intégration du compilateur dynamique Graal pour la plate-forme Linux x64
- Partage de données de classe d'application Cela permet de placer les classes d'application dans l'archive partagée afin de réduire le démarrage et l'encombrement des applications Java.
- Gestion des versions basée sur le temps
- GC complet parallèle pour G1
- Interface du collecteur de déchets
- Extensions supplémentaires de balises de langage Unicode
- Certificats racines
- Poignées de main locales
- Allocation de tas sur des périphériques de mémoire alternatifs
- Supprimer l'outil de génération d'en-tête natif - javah
- Consolider la forêt JDK dans un référentiel unique
Java SE 11
Il est actuellement ouvert pour la correction de bugs.