0
我有A类和写一个子类B,C.A仅具有一个构造,其是参数化。 C必须调用B的超级构造函数,B必须调用A的超级构造函数。现在我想用对象作为参数。因此参数对象具有保持℃的参考我怎样才能隐式和明确地调用构造函数?
语言:JAVA
CALSS A:B
public class A {
private C c;
protected A(C c) {
this.c = c;
}
}
类别:
public class B extends A {
protected B(C c) {
super(c);
}
}
C类:
现在,当我想调用构造函数一样,Eclipse的说:
Cannot refer to 'this' nor 'super' while explicitly invoking a constructor
我如何可以调用父类的构造函数与 “本” 的实例。 请好好解释这个错误并给出解决方法。
你为什么标记C++或Java-EE?我怀疑标签垃圾邮件只是为了增加对你的问题的关注。请不要这样做,除非你想吸引的注意力是负面的。 – 2015-02-11 03:07:38
你的程序结构可能被打破 - 一个超类不应该要求自己的子类的知识或使用。 – 2015-02-11 03:11:45
你为什么认为你需要将'this'传递给'A'?由于'C'是'A'的子类型,'A'已经拥有它(也使用'this')。 – Radiodef 2015-02-11 03:13:33