打印对象实例名称从随机方法返回值?JAVA
这是我的主要观点:打印对象实例名称从随机方法返回值?JAVA,java,class,methods,return,Java,Class,Methods,Return,这是我的主要观点: public class testMain { public static void main ( String[] args ) { testClass test = new testClass(); System.out.println(test); } } 这是我的班级: public class testClass { private String word; public
public class testMain
{
public static void main ( String[] args )
{
testClass test = new testClass();
System.out.println(test);
}
}
这是我的班级:
public class testClass
{
private String word;
public testClass(String s)
{
word = s;
}
public String toString()
{
return "test";
}
}
当我从toString方法输入System.out.println(testClass)时,会打印“test”。为什么?这个方法的返回是如何执行的?当您执行时
System.out.println(test);
它调用对象上的toString方法。
默认情况下,它返回类名和附加信息,但您在类中定义了它(您覆盖了对象类中的默认方法),因此在您的示例中,它返回“test”,因为
println
导致对参数调用toString
。你还期待什么打印?你真的认为被调用的方法是随机的吗?