首页 > 代码库 > 静态代码块的初始化

静态代码块的初始化

<style>p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Helvetica Neue"; color: #454545 } p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Helvetica Neue"; color: #454545; min-height: 14.0px } p.p3 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px ".PingFang SC"; color: #454545 } span.s1 { font: 12.0px ".PingFang SC" } span.s2 { font: 12.0px "Helvetica Neue" } span.Apple-tab-span { white-space: pre }</style>

——————————————————————————代码如下:

 

public class Test09 {

private static int a;

private int b;

 

public void f(){

System.out.println("哈哈哈哈哈哈哈");

}

 

// 静态代码块一

static{

Test09.a = 1;

System.out.println(a);

 

Test09 t = new Test09();

t.f();

t.b = 1000;

System.out.println(t.b);

}

 

// 静态代码块二

static {

Test09.a = 2;

System.out.println(a);

}

 

// 静态代码块三

static {

Test09.a = 3;

System.out.println(a);

}

public static void main(String[] args) {

System.out.println(“main方法:”+a);

 

——————————————————————————运行结果:

 1

哈哈哈哈哈哈哈

1000

2

3

main方法:3

总结:静态块在首次创建对象或者访问类的字段时才会执行,并且只执行一次。执行顺序是代码块的先后顺序。

 

静态代码块的初始化