Der mit Static geänderte Initialisierungsblock wird als statischer Initialisierungsblock bezeichnet.
Besondere Aufmerksamkeit ist erforderlich: Der statische Initialisierungsblock wird nur ausgeführt, wenn die Klasse geladen wird, und kann nur einmal ausgeführt werden Weisen Sie statischen Variablen Werte zu und können Sie keine gewöhnlichen Mitgliedsvariablen initialisieren.
Schauen Sie sich einen Code an:
public class HelloWorld { String name; // 声明变量name String sex; // 声明变量sex static int age;// 声明静态变量age // 构造方法 public HelloWorld () { System.out.println("通过构造方法初始化name"); name = "tom"; } // 初始化块 { System.out.println("通过初始化块初始化sex"); sex = "男"; } // 静态初始化块 static { System.out.println("通过静态初始化块初始化age"); age = 20; } public void show() { System.out.println("姓名:" + name + ",性别:" + sex + ",年龄:" + age); } public static void main(String[] args) { // 创建对象 HelloWorld hello = new HelloWorld(); // 调用对象的show方法 hello.show(); } }
Laufendes Ergebnis:
通过静态初始化块初始化age 通过初始化块初始化sex 通过构造方法初始化name 姓名:tom,性别:男,年龄:20
Da der statische Initialisierungsblock ausgeführt wird, wenn die Klasse geladen wird, erfolgt die Ausgabe im statischen Initialisierungsblock wird zuerst der Inhalt ausgegeben. Anschließend wird der normale Initialisierungsblock und schließlich die Konstruktormethode ausgeführt. Da der statische Initialisierungsblock nur beim Laden der Klasse und nur einmal ausgeführt wird, wird der statische Initialisierungsblock nicht ausgeführt, wenn das Objekt hello2 erneut erstellt wird.
Das obige ist der detaillierte Inhalt vonSo bedienen Sie statische Initialisierungsblöcke in der JAVA-Entwicklung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!