java n00b here。
我有一个像这样定义的自定义数据类型:
public class MyData{
int value;
int type;
String name;
public MyData(int newValue, int newType, string newName)
{
value = newValue;
type = newType;
name = newName;
}
}
当我调用这个类的实例时,我希望它计算为value属性,如下所示:
myData dataInstance = new myData(100,3,"customData");
System.out.println(dataInstance); // should print "100"
这可以实现吗?
答案 0 :(得分:6)
当您将System.out.println
与对象一起使用时,它将调用toString()
方法 - 因此您只需要覆盖它:
@Override public String toString() {
return String.valueOf(value);
}
另请注意,您的术语应该更具体。当你写道:
当我调用此类的实例时
......这并不意味着什么。您不调用实例 - 您在实例上调用方法。在这种情况下,方法是toString
。