java面向对象4-代码块

代码块

代码块在类中声明,类似一个没有名称的方法体(代码块),代码块分实例块和静态块.

实例块:每次创建对象时自动调用

{

//任何符合语法的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中初始化的顺序:

加载类;

静态变量初始化

静态代码块;【其只能调度静态的,不能调度非静态的】

成员变量

构造代码块

构造方法

普通代码块

你可能感兴趣的:(笔记,java)