[JAVA] À propos de statique
Après le chargement, le fichier de classe est séparé en la partie statique et les autres parties, et chacune est enregistrée dans une zone de mémoire différente.
Les membres qualifiés de statique sont placés dans la zone statique et les autres définitions sont placées dans la zone méta-espace (mémoire native).
- Lorsqu'une instance est créée, ** la zone d'instance est sécurisée dans la zone de tas selon la définition de classe dans la zone métaspace **
- ** Les champs statiques peuvent être utilisés sans créer d'instance **
- Pour accéder à un champ statique, écrivez "nom de classe.nom de champ". Ou créez une instance et accédez-y à l'aide de cette référence.
- Les membres statiques peuvent être utilisés sans instance, tandis que les membres non statiques ne peuvent pas être utilisés sans instance. Par conséquent, ** les méthodes statiques ne peuvent pas accéder aux membres non statiques **
- À l'inverse, il est possible d'accéder aux membres statiques à partir de méthodes non statiques
Les références
Capture approfondie de la collecte des problèmes Java SE11 Silver