【发布时间】:2015-03-11 02:17:02
【问题描述】:
Java 中对象的默认返回是返回 toString 方法,有没有办法改变这种行为,例如返回数字或其他类型,或者这只是语言中不可更改的核心组件?
Test test = new Test();
blankMethod(test);
我不确定为什么人们说我的假设是错误的...如果我重写对象的 toString 方法,它将输出新的 toString 方法...
@Override
public String toString() {
System.out.println("This method is run when the object is used as a parameter");
return "test";
}
【问题讨论】:
-
你的假设是错误的。引用类型的值是对对象的引用的值。另外,有一个重载的
println方法,它接受Object类型的参数并调用其toString方法。 -
"The default return of an object in Java is to return the toString method"-- 你在哪里找到这些信息的? -
您对
PrintStream#println(...)的作用感到困惑,即在对象上调用toString(),具有对象的固有属性。这是两个完全不同的东西。 -
可以通过摆脱不好的前提来改进它,并提供有关 CodeCamper 试图实现的更多信息。
-
在我的评论中,应该是
"You're ..."。呃。
标签: java