我正在制作新游戏,但我遇到了问题。当我编译时,终端说:
./Button.java:29: error: constructor Rect in class Rect cannot be applied to given types;
public Button(int x0, int y0, int x1, int y1) {
^
required: int,int,int,int
found: no arguments
reason: actual and formal argument lists differ in length
1 error
我不确定发生了什么。如你所见,它说found: no arguments
但它也说Button(int x0, int y0, int x1, int y1)
。这似乎与自己相矛盾......我注意到,一旦我延长了按钮'它就会开始发生。关于' Rect'
请帮忙。
答案 0 :(得分:1)
从错误消息中,可以看出Rect
类有一个四参数构造函数,并且它没有无参构造函数。
子类构造函数必须调用超类构造函数。如果您没有显式调用one,那么Java将为您插入对默认的no-arg构造函数的隐式调用。这就是失败的原因。 Rect
中没有no-arg构造函数。
你必须在这里显式调用超类构造函数,因为Rect
中没有no-arg构造函数。
public Button(int x0, int y0, int x1, int y1) {
super(x0, y0, x1, y1);
// Rest of your constructor here
}