Après l'avoir lu sur papier, je me rends compte que je dois le faire en détail
--Lu You Demandez au canal s'il est clair, afin qu'il y ait une source d'eau vive - Zhu Xi
La vie entière d'une classe, depuis le moment où elle est chargée en mémoire jusqu'à l'heure à laquelle il est déchargé de la mémoire Le cycle comprend : le chargement, la vérification (Verification), la préparation (Preparetation), la résolution (Resolution),
l'initialisation (Initialisation), et utiliser (Using) , sept étapes de déchargement (Téléchargement). Où la préparation et l’analyse de la validation sont appelées liaison.
1. L'architecture chargée
1), Bootstrap Classloader démarre le chargeur de classe, qui est principalement responsable du noyau apiOu le package jar spécifié par l'option -Xbootstrap est inclus dans le travail. 2), chargeur de classe d'extension Extension ClassLoader, principalement responsable du package jar sous java_home/lib/ext
3), chargeur de classe système App CLassLoader, principalement responsable de Java -classpath/ Le chargement des classes et des packages jar dans le répertoire ; 4), chargeur de classe défini par l'utilisateur UserCustom ClassLoader, pendant l'exécution du programme, via l'enfant de Java.lang
.Classloader Class classe de chargement dynamique 2. Caractéristiques du chargement de classe
espace de noms
, deux noms de classe identiques ne peuvent pas apparaître dans le même espace de noms2), Afin d'obtenir le mécanisme de sécurité du chargeur de classes de premier niveau java
securitysandboxmodelclasses de premier niveau, Java adopte par défaut la structure « chaîne de chargement déléguée parentale ». 3. Il existe trois façons de charger les classes :
1). Lorsque l'application est démarrée depuis la ligne de commande, elle est initialisée. et chargé par la JVM.
2), chargement dynamique via la classe.
forName() méthode. 3), chargement dynamique via la méthode ClassLoader().loadClass().
Ces trois méthodes de chargement ont un impact sur l'exécution des blocs de code
statiqueCe 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!