java - Java varargs 构造函数在子类构造函数中给出错误
问题描述
我有 2 个课程:FinishButton
和ChangeSpeedButton
.
FinishButton
是父类,但它来自不同的包,它是另一个类的子类。它有 2 个构造函数:
public class FinishButton extends Button {
public FinishButton(Point...points) {
super(Response.SLOW,Type.HOLD,points);
}
public FinishButton() {
this(new Point(width-75,height-75),
new Point(width-75,height-15),
new Point(width-15,height-15),
new Point(width-15,height-75));
}
public void function() {
nextPanel();
}
public void draw(Graphics g) {
super.draw(g);
this.xpoints[0] = 0;
g.setColor(Defaults.GRAPHIC_COLOR);
int[] xPoints = {
width-45-(int)((20*Math.sqrt(3))/2),
width-45-(int)((20*Math.sqrt(3))/2),
width-45+(int)((20*Math.sqrt(3))/2)
},
yPoints = {
height-65,height-25,height-45
};
int nPoints = 3;
g.fillPolygon(xPoints, yPoints, nPoints);
}
}
这些课程正在进行中,但ChangeSpeedButton
看起来像这样:
public class ChangeSpeedButton extends FinishButton {
public ChangeSpeedButton() {
super(new Point(width/2-30,height-75),
new Point(width/2-30,height-15),
new Point(width/2+30,height-15),
new Point(width/2+30,height-75));
}
}
奇怪的是,FinishButton
当重载自己的构造函数时,它完美地处理了可变参数,但由于某种原因,在ChangeSpeedButton
's 的构造函数上,Eclipse告诉我
“删除参数以匹配'FinishButton()'”或“更改构造函数'FinishButton()':添加参数'Point,Point,Point,Point'”。
有谁知道为什么它给我一个错误ChangeSpeedButton
?
编辑:我添加了完整的课程。根据要求,这是Point
课程:
public class Point {
private double x,y;
public double getX() { return x; }
public double getY() { return y; }
public Point() {
this(0,0);
}
public Point(double x,double y) {
this.x = x;
this.y = y;
}
public String toString() {
return "Point: ("+x+", "+y+")";
}
}
也许这与 Button 类是嵌套类这一事实有关?
解决方案
哦,我的天啊。我太笨了 我打开了 2 个 FinishButton 文件,即使我用正确的更改保存了其中一个文件,但 ChangeSpeedButton 只查看了过时的文件。
推荐阅读
- sql - 返回 student_ids,其中每个类别中至少有一个
- c# - 如何调用 HashPassword 并将用户密码存储到数据库?
- android-studio - Android - (Android Studio) - 创建类似于 TODO,但颜色和名称不同?
- javascript - 将 Vuesax 侧边栏组件与 spa 一起使用,并希望自动检测页面并设置活动属性
- azure - 自动向 Azure DevOps 自托管代理添加功能
- javascript - 显示具有 ajax 功能的数据库的 php 和 html 130.000 条记录
- actions-on-google - Actions SDK:同一 queryPattern 中的两个 org.schema.type.Text 实例失败
- mysql - 如何根据多个值更新列
- amazon-web-services - aws pinpoint update-apns-sandbox-channel 命令导致:缺少凭据
- python - 为什么 CockroachDB 在大数据输入时可能会关闭连接?