这个super()的替代是什么;我的代码中的语句...因为它显示了一个错误: 构造函数调用必须是构造函数中的第一个语句。
class c
implements android.view.View.OnClickListener
{
final b a;
private final Dialog b;
c(b b1, Dialog dialog)
{
a = b1;
b = dialog;
**super();**//Error Constructor Call must be the first statement in a constructor
}
public void onClick(View view)
{
b.cancel();
}
}
答案 0 :(得分:1)
应该是:
c(b b1, Dialog dialog) {
super();
a = b1;
b = dialog;
}
答案 1 :(得分:0)
将c更改为:
c(b b1, Dialog dialog) {
super();
a = b1;
b = dialog;
}
如果你调用超类构造函数,那么在进行自己的初始化之前,你总是必须这样做。
答案 2 :(得分:0)
您还可以方便地更改变量名称,如:
class C implements android.view.View.OnClickListener {
final B a;
private final Dialog b;
c(B a, Dialog b) {
super();
this.a = a;
this.b = b;
}
public void onClick(View view) {
b.cancel();
}
}
答案 3 :(得分:0)
super();
指的是扩展类构造函数,即Object
..
为避免出现此类错误,请修改代码,使super();
成为c
类构造函数中的第一个语句。
c(b b1,Dialog dialog)
{
super();
a = b1;
b = dialog;
}
P.S。您的编译器本身会给您答案。