標籤:java toString()
在java中,所有對象都有toString()這個方法,因爲它是Object裏面已經有了的方法,而所有類都是繼承Object,所以“所有對象都有這個方法”
它通常只是爲了方便輸出,比如System.out.println(xx),括號裏面的“xx”如果不是String類型的話,就自動調用xx的toString()方法
總而言之,它只是sun公司開發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
所以,toString的好處是在碰到“println”之類的輸出方法時會自動調用,不用顯式打出來
它通常只是爲了方便輸出,比如System.out.println(xx),括號裏面的“xx”如果不是String類型的話,就自動調用xx的toString()方法
總而言之,它只是sun公司開發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
所以,toString的好處是在碰到“println”之類的輸出方法時會自動調用,不用顯式打出來
引用地址:
http://younglab.blog.51cto.com/416652/101610/