toString()的使用

来源:互联网 发布:淘宝售中客服工作流程 编辑:程序博客网 时间:2024/06/11 13:44
以下是Java编程思想的一段话:

class WaterSource {
private String s;
WaterSource() {
System.out.println("WaterSource()");
s = new String("Constructed");
}
public String toString() { return s; }
}
public class SprinklerSystem {
private String valve1, valve2, valve3, valve4;
WaterSource source;
int i;
float f;
void print() {
System.out.println("valve1 = " + valve1);
System.out.println("valve2 = " + valve2);
System.out.println("valve3 = " + valve3);
System.out.println("valve4 = " + valve4);
System.out.println("i = " + i);
System.out.println("f = " + f);
System.out.println("source = " + source);
}
public static void main(String[] args) {
SprinklerSystem x = new SprinklerSystem();
x.print();
}
} //
WaterSource 内定义了一个非常特殊的方法toString() 大家不久就会知道每种非基
类型的对象都有一个toString()方法若编译器本来希望得到的是一个String 但却获得了这
样的一个对象便会调用这个方法所以在下面这个表达式中
System.out.println("source = " + source);
编译器会发现我们试图向一个WaterSource 添加一个String 对象"source =" 这对它
来说是不可接受的。因为我们只能将一个字串添加到另一个字串,所以它会说我要
调用toString() 把source 转换成字串,经这样处理后它就能编译两个字串并将结果字
串传递给一个System.out.println() 。每次想让自己的一个类允许这样的行为都只需写一个
toString()方法

由此可见toString()方法的使用还是比较重要的

原创粉丝点击