Partie I : Introduction à Java
Premier chapitre Introduction à Java
Vue d'ensemble
Avantages :
Le système technologique Java
JDK est utilisé pour prendre en charge Développement Java L'environnement minimum, comprenant le langage de programmation Java, la machine virtuelle Java et la bibliothèque de classes API Java
JRE est un environnement standard qui prend en charge l'exécution de programmes Java, y compris le sous-ensemble Java SE API dans l'API Java ; bibliothèque de classes et La machine virtuelle Java comporte deux parties ;
Réparti selon les domaines d'activité clés sur lesquels la technologie Java se concentre, le système technologique Java peut être divisé en 4 plates-formes :
- Java Card : prend en charge les applets (applet Java) Une plateforme qui fonctionne sur de petits périphériques de mémoire (tels que les cartes à puce)
- Java ME (Micro Edition) : une plateforme ; qui prend en charge Java exécuté sur les terminaux mobiles ; (Il existe aujourd'hui des SDK Android)
- Java SE (Standard Edition) : prend en charge la plate-forme Java pour les applications de bureau
- Java EE (Enterprise Edition) : plate-forme Java qui prend en charge les applications de niveau entreprise (telles que les applications ERP et CRM) à l'aide d'une architecture multicouche
Historique de développement Java
JDK 1.0 : machine virtuelle Java, Applet, AWT, etc. JDK 1.1 : fichier JAR format, JDBC, JavaBeans, RMI, classes internes, réflexion JDK 1.2 : divisé en J2SE/J2EE/J2ME, compilateur JIT intégré et une série de classes de collection Collections ; JDK 1.3 : service JNDI, utilisation de CORBA IIOP pour implémenter le protocole de communication RMI, améliorations Java 2D JDK 1.4 : expressions régulières, exception ; chaîne, NIO, classe de journal, analyseur XML et convertisseur XSLT ; JDK 1.5 : autoboxing, génériques, annotations dynamiques, énumérations, paramètres variables, boucles de parcours, modèle de mémoire Java amélioré et fournit le package de concurrence java.util.concurrent ; JDK 1.6 : fournit un support de langage dynamique, fournit une API de compilation et une API de serveur micro HTTP, une optimisation de la machine virtuelle (verrouillage et synchronisation, garbage collection, classe chargement, etc.);
JDK 1.7 : collecteur G1, prise en charge améliorée des appels pour le langage Java, architecture de chargement de classe améliorée JDK 1.8 ; : Expressions Lambda, interfaces fonctionnelles, etc. > : Classic VM est la première machine virtuelle commerciale, une méthode d'analyse pure pour exécuter du code Java. Si vous souhaitez utiliser un compilateur JIT, vous devez vous connecter. L'analyseur et le compilateur ne peuvent pas fonctionner ensemble et l'efficacité d'exécution du compilateur est très faible. ; Exact VM a été publié par l'équipe de machine virtuelle Sun sur la plate-forme Solaris. La machine virtuelle prend en charge un compilateur juste à temps à deux niveaux, un travail mixte de compilateurs et d'interprètes et utilise une gestion précise de la mémoire (la machine virtuelle peut connaître le type spécifique de données à un certain emplacement de la mémoire), mais il a été rapidement remplacé par HotSpot VM
Sun HotSpot VM
: La machine virtuelle fournie par Sun ; JDK et OpenJDK sont actuellement les plus utilisés ; ils héritent des avantages des deux premières machines virtuelles et prennent également en charge la technologie de détection de code chaud (trouver le code avec la plus grande valeur de compilation grâce à des compteurs). En 2006, Sun a annoncé que JDK incluait HotSpot VM ; en tant qu'open source, et OpenJDK a été créé sur cette base
Sun Mobile-Embedded VM/Meta-Circular VM : Certaines machines virtuelles publiées et expérimentales développées par Sun ; pour les applications mobiles et embarquées ;
BEA Jrockit /IDM J9 VM : JRockit VM était autrefois considérée comme la machine virtuelle Java la plus rapide au monde. applications côté serveur et n'inclut pas l'implémentation de l'analyseur. Tout cela est compilé et exécuté par un compilateur juste à temps ; la VM J9 est positionnée relativement près de HotSpot. L'objectif principal est de servir de plate-forme d'exécution pour divers produits Java de. IBM
Azul VM/BEA Liquid VM : une machine virtuelle hautes performances propriétaire d'une plateforme matérielle spécifique
Apache Harmony/Google Android Dalvik VM : Apache Harmony contient sa propre machine virtuelle et sa propre bibliothèque Java, mais n'est pas certifié TCK. Dalvik VM est le cœur de la plateforme Android. Elle ne suit pas la machine virtuelle Java ; spécification et ne peut pas exécuter directement les fichiers de classe. Il utilise une architecture de registre au lieu de l'architecture de pile commune de JVM
Microsoft JVM et autres : Microsoft était autrefois un dé ; -ardent partisan de la technologie Java et a développé la machine virtuelle Java la plus performante sous Windows, mais a ensuite été poursuivi en justice par Sun pour mettre fin à son développement
-
Regard sur la technologie Java L'avenir
Modulaire
Langage hybride : utiliser des langages spécifiques à un domaine pour résoudre des problèmes dans des domaines spécifiques
Parallélisme multicœur
-
Syntaxe plus riche
Machine virtuelle 64 bits
Recommandations associées :
Développement de Java (Historique) Trajectoire et changements historiques
Aperçu détaillé de la machine virtuelle Java
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!