类的初始化顺序

 

类的初始化顺序
    类在加载时(第一次调用类),类的各个成员变量会进行初始化,对于引用数据类型的变量会默认初始化为null,对于int和long型的变量会初始化为0,
    float和double型的变量会初始化为0.0。
    类在加载时,除了会初始化变量,还会调用类的静态块和动态块。
    静态块:
   在类里面可以使用static修饰一段代码
    static{
System.out.println("a");
    }
    static{
System.out.println("b");
    }
  这种代码会在类加载的时候执行,多个static语句块会从上往下顺序执行。
  
  动态块:
        {
System.out.println("c");
}
{
System.out.println("d");
}
   动态块不用任何关键字修饰,直接使用花括号包含,这种代码会在static语句块执行完之后执行,
   多个动态语句块会从上往下顺序执行
 
   静态块只会在第一次加载时执行一次,动态块在每次使用此类时执行,并且在调用类的静态方法
   或静态变量时动态块是不会执行的。

你可能感兴趣的:(java语言基础)