任何正文可以解释一下以下程序中的toString()方法是如何工作的?在下面的程序中我没有调用toString()方法。但是当我创建一个Object时如何打印消息可以任何人解释我。我是java的新手。
class Inner
{
public String toString()
{
return "Hai this is java";
}
}
class Main
{
public static void main(String [] java)
{
System.out.println(new Inner());
}
}
答案 0 :(得分:1)
System.out
会返回PrintStream
个实例。 PrintStream
有一个public void println(Object x)
方法,可以为传递给它的String.valueOf(x)
调用Object
。当您向对象传递非空引用时,String.valueOf(x)
会调用该对象的toString()
方法。
答案 1 :(得分:0)
print命令将始终打印您作为参数传递的对象的toString方法返回的值。
要么覆盖它,就像你一样,然后将返回它,或者它将使用默认实现,它继承自Object类。