<>代码块
代码块在类中声明,类似一个没有名称的方法体(代码块),代码块分实例块和静态块.
实例块:每次创建对象时自动调用
{
//任何符合语法的java代码
}
静态块:类加载时自动调用,仅一次,与是否创建对象无关.
static{
//任何符合语法的java代码
}
public class Demo { static int num = 10; { System.out.println("实例块"); } static{
System.out.println("静态块"); } } public static void main(String[] args) { System.
out.println(Demo.num); System.out.println(Demo.num); System.out.println(Demo.num
); } /* 结果: 静态块 10 10 10 */ public static void main(String[] args) { new Demo();
// 先加载类 然后创建对象 new Demo(); }/* 结果: 静态块 实例块 实例块 */
注意:
JAVA中初始化的顺序:
加载类;
静态变量初始化
静态代码块;【其只能调度静态的,不能调度非静态的】
成员变量
构造代码块
构造方法
普通代码块