Maison >Java >javaDidacticiel >Quelle est la différence entre les blocs de code d'initialisation statiques et non statiques en Java ?
Blocs de code d'initialisation statiques ou non statiques
En Java, le mot-clé static peut être utilisé pour déclarer des variables et des méthodes au niveau de la classe qui sont accessibles sans créer d’instance de la classe. Cependant, il est également possible d'utiliser du statique avec des blocs de code qui ne font partie d'aucune fonction au sein de la classe.
Bloc de code d'initialisation de classe
Une classe le bloc de code d'initialisation est déclaré à l'aide du modificateur static. Il est exécuté lorsque la classe est chargée en mémoire et est utilisé pour initialiser des variables statiques et effectuer d'autres tâches au niveau de la classe. Par exemple :
public class Test { private static int a = 5; static { System.out.println("Class initialization code executed"); } }
Le bloc de code d'initialisation de la classe sera exécuté avant la création de toute instance de la classe Test, et la variable a sera initialisée à 5.
Instance Bloc de code d'initialisation
Un bloc de code d'initialisation d'instance est déclaré sans le modificateur statique et est exécuté lorsque une instance de la classe est créée. Il est utilisé pour initialiser les variables d'instance et effectuer d'autres tâches d'initialisation pour l'instance. Par exemple :
public class Test { private int a = 5; { System.out.println("Instance initialization code executed"); } }
Le bloc de code d'initialisation de l'instance sera exécuté avant l'appel du constructeur de la classe Test, et la variable a sera initialisée à 5.
Clé Différences
Les principales différences entre les blocs de code d'initialisation de classe et d'instance sont les suivantes suit :
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!