关于this和super的问题
同时调用this和suoper(带参数的)的构造函数的问题。具体实例,请看下面的代码,在红色的部分。
编译时会发现错误,“this语言必须位于第一列。”
但当还下this和super的顺序后,编译时也会发现错误,“super语言必须位于第一列。”
这时候该怎么解决这个问题啊?望高手留意。
class SuperClass {
public int x;
public SuperClass(){
x = 23;
}
public SuperClass(int x) {
this.x = x;
}
}
class SubClass extends SuperClass {
public int y;
public SubClass() {
//super(46);
//super();
y = 12;
}
public SubClass(int y) {
super(46);
this.y = y;
}
public SubClass(int x,int y) {
super(x);
this(y);
}
}
public class TestSuper {
public static void main(String[] args) {
SubClass ss = new SubClass();
SubClass ss2 = new SubClass(1,2);
System.out.println(ss2.x + " " + ss2.y);
}
}
[解决办法]
public SubClass(int y) {
super(46);
this.y = y;
}
public SubClass(int x,int y) {
super(x);
this(y);
}
}