下面有一段代码我对这个代码中那句对对象的输出有点不是很懂,为什么对对象的输出结果toString方法中返回的结果?
这是thinkingi in java中的一个例子,虽然下面有讲解但是我看完了还是不是很懂,求大侠告知下这是为什么?
谢谢啦!



public final class SprinklerSystem {
private String valve1, valve2, valve3,valve4;
private WaterSource source = new WaterSource();
private int i;
private float f;
public String toString()
{
return "valve1 ="+valve1+" "+
"valve2 ="+valve2+" "+
"valve3 ="+valve3+" "+
"valve4 ="+valve4+"\n"+
"i = "+ i+" "+"f = "+f+" "+
"source = " + source;
}
public static void main(String[] args) {
SprinklerSystem sprinklers = new SprinklerSystem();
System.out.println(sprinklers);
System.out.println("*****************");
System.out.println(sprinklers.toString());
}
}
class WaterSource{
private String s;
public WaterSource() {
System.out.println("WaterSource()");
s = "Constructed";
}
public String toString(){
return s;
}
}