정적으로 수정된 초기화 블록을 정적 초기화 블록이라고 합니다.
특별한 주의가 필요합니다: 정적 초기화 블록은 클래스가 로드될 때만 실행되며 동시에 정적 초기화 블록은 정적 변수에 값을 할당할 수만 있고 일반 멤버 변수를 초기화할 수 없습니다.
코드 보기:
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(); } }
실행 결과:
通过静态初始化块初始化age 通过初始化块初始化sex 通过构造方法初始化name 姓名:tom,性别:男,年龄:20
클래스가 로드될 때 정적 초기화 블록이 실행되기 때문에 정적 초기화 블록의 출력 내용이 먼저 출력됩니다. 그런 다음 일반 초기화 블록이 실행되고 마지막으로 생성자 메서드가 실행됩니다. 정적 초기화 블록은 클래스가 로드될 때만 실행되고 한 번만 실행되므로 개체 hello2가 다시 생성될 때 정적 초기화 블록은 실행되지 않습니다.
위 내용은 JAVA 개발에서 정적 초기화 블록을 작동하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!