静态代码块
格式:
static
{
代码
}
特点:
随着累的加载而执行,只执行一次
用于给类进行初始化的
public class StaticCodeDemo {
static
{
System.out.println("a");
}
public static void main(String[] args) {
System.out.println("c");
}
static
{
System.out.println("b");
}
}
执行结果:a b c
class StaticCode{
static
{
System.out.println("code");
}
}
public class StaticCodeDemo {
public static void main(String[] args) {
System.out.println("c");
new StaticCode();
new StaticCode();
System.out.println("over");
}
}
执行结果:
c
code
over
StaticCode sc = null;不会执行代码段、
//静态代码块 给类初始化
static
{
System.out.println("code"+this.num); 错误
}
//构造代码块 给对象初始化
{
System.out.println("kuai"+this.num); 正确
}
Static{} 静态代码块 给类初始化 先于构造代码块执行
{} 构造代码块 给对象初始化
构造函数 给对应对象初始化