关于以下application的说明,正确的是(C ), 为什么是这个结果,请问各位大虾这个程序的运行顺序是什么,是先main方法,还是先初始化块或者先静态常量初始化???还有就是一个application可以有两个静态初始化块吗?如果不可以,那么这个程序怎么不会出错呢?
1. class StaticStuff
2. {
3. static int x=10;
4. static { x+=4;}
5. public static void main(String args[])
6. {
7. System.out.println("x=" +x);
8. }
9. static {x/=3;}
10. }
A. 4行与9行不能通过编译,因为缺少方法名和返回类型
B. 9行不能通过编译,因为只能有一个静态初始化器
C. 编译通过, 执行结果为: x=4
D. 编译通过, 执行结果为: x=3
1. class StaticStuff
2. {
3. static int x=10;
4. static { x+=4;}
5. public static void main(String args[])
6. {
7. System.out.println("x=" +x);
8. }
9. static {x/=3;}
10. }
A. 4行与9行不能通过编译,因为缺少方法名和返回类型
B. 9行不能通过编译,因为只能有一个静态初始化器
C. 编译通过, 执行结果为: x=4
D. 编译通过, 执行结果为: x=3
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货