1. Vérifiez si la classe est chargée.
Lorsque la machine virtuelle rencontre la nouvelle instruction, elle vérifie d'abord si le paramètre de l'instruction peut être localisé en tant que référence de symbole d'une catégorie dans le pool constant, et vérifie si la catégorie représentée par la référence de symbole est chargée, analysée , et initialisé. Sinon, effectuez le processus de chargement de classe.
2. Allouez de la mémoire à la cible.
Après avoir terminé le chargement de la classe, la machine virtuelle commence à allouer de la mémoire pour la cible et détermine à ce moment la taille de la mémoire requise. Allouez simplement la mémoire nécessaire sur le tas.
3. Initialisez la valeur zéro pour l'espace de stockage alloué.
Une fois l'allocation de mémoire de l'objet terminée, l'espace mémoire de l'objet doit être initialisé à zéro pour garantir que l'objet peut être utilisé directement même s'il n'a pas de valeur initiale.
4. Effectuez d'autres réglages pour le public.
Après avoir alloué de l'espace mémoire et initialisé la valeur zéro, la machine virtuelle doit également effectuer d'autres paramètres nécessaires pour l'objet. Le lieu de réglage est situé dans l'en-tête de l'objet, y compris la classe à laquelle appartient l'objet, les informations de métadonnées de classe, hashcode de l'objet, âge de l'agent GC et autres informations.
5. Exécutez la méthode init.
Après avoir effectué les étapes ci-dessus, même si l'objet dans la machine virtuelle réussit, le programme Java doit toujours implémenter la méthode init, car l'objet à ce moment n'est qu'une valeur zéro initialisée et la valeur initiale n'est pas effectivement attribué selon le code dans le programme, donc la méthode init est appelée Enfin, cet objet peut vraiment être utilisé.
1 SpringMVC, Spring Web MVC est un framework Web léger basé sur Java qui implémente le type de modèle de conception Web MVC basé sur les requêtes.
2.Shiro, Apache Shiro est un framework de sécurité pour Java.
3.Mybatis, MyBatis est un excellent framework de couche de persistance qui prend en charge les requêtes SQL ordinaires, les procédures stockées et le mappage avancé.
4.Dubbo, Dubbo est un framework de services distribués.
5. Maven, Maven est un outil de gestion de projet et d'automatisation de build.
6.RabbitMQ, RabbitMQ est un serveur de file d'attente de messages AMQP à haute concurrence et haute fiabilité implémenté dans Erlang. 7.Ehcache, EhCache est un framework de mise en cache en cours de processus Java pur.
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!