Which two code fragments correctly create and initialize a static array of int elements(Choose two)
A static final int[] a ={100,200};
B static final int []a ;
static{ a =new int[2];a[0]=100;a[1]=200;}
C static final int []a =new int [2]{100,200};
D static final int [] a;
static void init(){a =new int[3];a[0]=100;a[1]=200;}求解释:
。
A static final int[] a ={100,200};
B static final int []a ;
static{ a =new int[2];a[0]=100;a[1]=200;}
C static final int []a =new int [2]{100,200};
D static final int [] a;
static void init(){a =new int[3];a[0]=100;a[1]=200;}求解释:
。
D static final int [] a; static void init(){a =new int[3];a[0]=100;a[1]=200;} // final的初始化不能這樣寫
C应该是 static final int []a =new int []{100,200};
数组初始化就该这样,不知道该怎么解释D应该是 static final int [] a;
static{a =new int[3];a[0]=100;a[1]=200;}
被static final 同时声明的话只能在定义时或者静态块中初始化,D的静态方法肯定不行.