为什么这个()和超级()必须是构造函数中的第一个语句?
public class MyClass { public MyClass(int x) {}}public class MySubClass extends MyClass { public MySubClass(int a, int b) { int c = a + b; super(c); // COMPILE ERROR }}
public class MySubClass extends MyClass { public MySubClass(int a, int b) { super(a + b); // OK }}
public class MyClass { public MyClass(List list) {}}public class MySubClassA extends MyClass { public MySubClassA(Object item) { // Create a list that contains the item, and pass the list to super List list = new ArrayList(); list.add(item); super(list); // COMPILE ERROR }}public class MySubClassB extends MyClass { public MySubClassB(Object item) { // Create a list that contains the item, and pass the list to super super(Arrays.asList(new Object[] { item })); // OK }}
this()
RISEBY
慕村225694
相关分类