学科分类
目录
Java基础

静态代码块

在Java类中,使用一对大括号包围起来的若干行代码被称为一个代码块,用static关键字修饰的代码块称为静态代码块。静态代码块的语法如下:

static {
...
}

当类被加载时,静态代码块会执行,由于类只加载一次,因此静态代码块也只执行一次。在程序中,通常会使用静态代码块来对类的成员变量进行初始化。接下来通过一个案例来了解静态代码块的使用,如文件1所示。

文件1 Example14.java

 1    class Person{
 1        static {
 2            System.out.println("执行了Person类中的静态代码块");
 3        }
 4    }
 5    public class Example14{
 6        static{
 7            System.out.println("执行了测试类中的静态代码块");
 8        }
 9        public static void main(String[] args){
 10            // 实例化2个Person对象
 11            Person p1 = new Person();
 12            Person p2 = new Person();
 13        }
 14    }

运行结果如图1所示。

图1 运行结果

从图1可以看出,程序中的两段静态代码块都执行了。使用Eclipse运行文件1中的程序后,Java虚拟机首先会加载类Example14,在加载类的同时就会执行该类的静态代码块,紧接着会调用main()方法。在main()方法中创建了两个Person对象,但在两次实例化对象的过程中,静态代码块中的内容只输出了一次,这就说明静态代码块在类第一次使用时才会被加载,并且只会加载一次。

点击此处
隐藏目录