隐藏特性:Java的初始化代码块
public class Test {int a;int b;static int a2;static int b2;// instance initialization block{b = 5;a = b + 1;System.out.printf("In instance initialization block\na=%d,b=%d\n", a, b);}// static initialization blockstatic {b2 = 5;a2 = b2 + 1;System.out.printf("In static initialization block\na2=%d,b2=%d\n", a2, b2);}Test(){b = 10;a = b + 1;System.out.printf("In constructor Test()\na=%d,b=%d\n", a, b);}Test(int aa, int bb){a = aa;b = bb;System.out.printf("In constructor Test(aa, bb)\na=%d,b=%d\n", a, b);}public static void main(String[] args) {new Test();new Test(1, 2);}}//In static initialization block//a2=6,b2=5//In instance initialization block//a=6,b=5//In constructor Test()//a=11,b=10//In instance initialization block//a=6,b=5//In constructor Test(aa, bb)//a=1,b=2