本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/aryer/archive/2009/12/25/5077941.aspx
在java中,全部對象都有toString()這個方法,由於它是Object裏面已經有了的方法,
而全部類都是繼承Object,因此「全部對象都有這個方法」 。它一般只是爲了方便輸出,
好比System.out.println(xx),括號裏面的「xx」若是不是String類型的話,
就自動調用xx的toString()方法。總而言之,它只是sun公司開發java的時候爲了方便全部類的
字符串操做而特地加入的一個方法 java
例子1:
public class A{
public String toString(){return "this is A";}
}
若是某個方法裏面有以下句子:
A obj=new A();
System.out.println(obj);
會獲得輸出:this is A 函數
例子2:
public class A{
public String getString(){return "this is A";}//toString改個名字試試看
}
A obj=new A();
System.out.println(obj); //隱式調用toString()函數
//由於沒用自定義toString()函數的返回值,因此會獲得輸出:xxxx@xxxxxxx的類名加地址形式 ;
System.out.println(obj.getString()); //顯式調用getString()函數,會獲得輸出:this is A this
因此,toString的好處是在碰到「println」之類的輸出方法時會自動調用,不用顯式打出來spa