成员变量:
分为静态成员变量、实例成员变量。
成员变量在使用前都有初始化值,成员变量的初始化方式有很多。
1、初始化方式
静态成员变量:

  • 在声明处初始化
  • 在静态初始化块中初始化(加static关键字的块)
public static int X = 10;//在声明处初始化
static {                 //在静态初始化块中初始化
   X = 15;   
}

实例成员变量:

  • 在声明处初始化
  • 在实例初始化块中初始化
  • 在构造器中初始化
public int X = 10;  //在声明处初始化
private mainClass(int arg){//在构造器中初始化
 X=arg;
 System.out.println("this is mainClass");
}  
{                   //在实例初始化块中初始化
   X = 15;   
}

2、初始化顺序
上述5中初始化方式的初始化顺序: