Java成员变量初始化和执行顺序

来源:互联网 发布:inventor软件怎么样 编辑:程序博客网 时间:2024/05/19 18:46

成员变量的初始化

  1. 在变量声明出初始化
  2. 使用初始化块初始化
  3. 使用构造器初始化

初始化执行顺序

  1. 声明处初始化和初始化块执行早于构造器
  2. 声明处初始化和初始化块按照代码的顺序执行,先声明的先执行
public class Init {    //变量声明处初始化    int age = f();    //初始化块初始化    {        System.out.println("初始化块执行");        age=10;    }    //构造器初始化    public Init(){        age =10;        System.out.println("构造器执行");    }    public int f(){        System.out.println("声明处初始化");        return 3;    }    public static void main(String[] args) {        Init in = new Init();    }}

创建对象,成员变量先分配空间,变量的值为成员变量的默认值,分配空间完成后才进行初始化。

public class Init2 {    {        System.out.println("age ="+this.age);    }    int age = f();    int a = 100;    public int f(){        System.out.println("a的值:"+a);        return 3;    }    public static void main(String[] args) {        Init2 in = new Init2();    }}//age =0//a的值:0
0 0
原创粉丝点击