代码块
代码块只能用static修饰,分为静态代码块和非静态代码块,代码块中可以有输出语句
形式
static{
System.out.print("hello");
}
作用:初始化各属性
静态代码块
随着类的加载而执行,如果有多个静态代码块,依照其书写顺序来判断其执行先后。
初始化类的信息,并且静态代码块会早于非静态代码块执行 — 整个静态代码块只会执行一次
可以调用静态变量和静态方法
非静态代码块
随着对象的创建而执行,如果有多个非静态代码块,也依照其书写顺序来判断其执行先后顺序
对象创建一个执行一次,可以对对象的属性进行初始化
不可以调用静态变量和静态方法