public MyLine(double x, double y)
{
MyLine p1 = new MyLine();
p1.x = x;
p1.y = y;
}
那是我的代码
我得到的错误是
./MyLine.java:12: cannot find symbol
symbol : constructor MyLine()
location: class MyLine
MyLine p1 = new MyLine();
最佳答案
这行:
MyLine p1 = new MyLine();
应该删除。那是在创建一个新实例,您实际上要使用正在创建的实例(因为您在构造函数中)。由于从不存在的这一行调用构造函数,您会收到错误消息,但您还是不想这样做。
您可以使用
this
关键字来引用当前实例(如果字段与参数具有相同的名称,则需要执行此操作,在这种情况下,看起来就像它们一样。)因此,考虑到这一点,您将得到以下结果:
public MyLine(double x, double y) {
this.x = x;
this.y = y;
}