静态代码块其写法与构造代码块稍有区别。
构造代码块就是在类中直接{},一个是static+{}.
有区别的是
1.静态代码块是随着类的加载而成立并执行,且只执行一次;
2.构造代码块则是随着对象的建立而执行,可根据对象建立数多次执行,优先级在静态代码块执行之后,但在构造方法之前。
eg.
class Person{
static{
System.out.println("这个就是静态代码块");
}
Person(){
System.out.println("构造方法");
}
{
System.out.println("构造代码块");
}
}
public class Study{
public static void main(String[] args){
Person one=new Person();
Person two=new Person();
}
}
输出结果为:
这个就是静态代码块
构造代码块
构造方法
构造代码块
构造方法