有人可以帮我解决这个错误。我正在尝试自己学习java并且不确定导致错误的原因是什么?
/*
* Without changing the Point class, add any arguments to the constructor
* below so that the error goes away.
*/
public Point p04Constructor() {
return new Point();
}
这是Point类:
public class Point {
private int _x;
private int _y;
public Point(int x, int y) {
_x = x;
_y = y;
}
public void move(int dx, int dy) {
_x = _x + dx;
_y = _y + dy;
}
public void flip() {
_x = _y;
_y = _x;
}
public void setY(int _y) {
_y = 2;
}
public int getY() {
return _y;
}
public String toString() {
return "(" + _x + "," + _y + ")";
}
}
请让我知道你的想法。我已经尝试过做评论中建议的内容并继续出错。
答案 0 :(得分:1)
添加奥斯汀的答案......
还有其他一些问题......
setY(int y)方法将始终将_y值设置为2而不是方法参数y。
翻转方法不会像您期望的那样工作。一旦_x设置为_y,那么_y将被设置为_x,它只是设置为_y。
没有getX()方法。
答案 1 :(得分:0)
正如评论中的其他人所说,您需要为构造函数传递正确的参数。所以这样的东西应该编译。
public Point p04Constructor() {
return new Point(0, 0);
}
您需要添加2个int
参数,因为您提供给我们的Point
类只有一个构造函数,并且需要传递2 int
个变量。
public Point(int x, int y) {