【发布时间】:2019-10-03 22:21:52
【问题描述】:
我正在尝试将字符串label 从同名的构造函数字符串传递到我的方法toString()。但是,我不断收到错误消息,告诉我 label 无法解析为变量。这是我的代码:
public class LabeledPoint extends java.awt.Point {
LabeledPoint(int x, int y, String label){
setLocation(x, y);
}
public String toString() {
return getClass().getName() + "[x=" + x + ",y=" + y + ",label=" + label + "]";
}
}
我已经能够推断出它与构造函数的主体有关,但我不知道是什么。谢谢。
【问题讨论】:
-
您的班级没有名为
label的成员。你的构造函数也不对字符串做任何事情 -
您的
toString()方法不可能理解label所指的变量。 -
如何将
label从构造函数传递到方法中? -
你没有。您需要将传递给构造函数的值存储在某处,然后在
toString()中使用它。您不能将值直接从构造函数传递给toString(),因为您没有从构造函数调用toString()。
标签: java methods constructor