关于以下代码的说明,正确的是
1. class StaticStuff
2. {
3. static int x = 10;
4. static { x += 5; }
5. public static void main(String args[ ])
6. {
7. System.out.println("x=" + x);
8. }
9. static { x /= 3; }
10. }4行与9行不能通过编译,因为缺少方法名和返回类型
9行不能通过编译,因为只能有一个静态初始化器
编译通过,执行结果为:x=5
编译通过,执行结果为:x=3
初始化顺序:
类变量定义->类代码块static{},如果有多个,按顺序执行->对象构造函数->对象代码块,"{}"
类变量定义->类代码块static{},如果有多个,按顺序执行->对象构造函数->对象代码块,"{}"