淺談Java編程ToString()方法重寫的意義
上一篇文章我們介紹了java tostring方法重寫代碼示例,接下來,我們簡(jiǎn)單聊聊java編程tostring()方法重寫的意義。
1、toString()就是是重寫,對(duì)于一般的對(duì)象來說都會(huì)有這個(gè)方法,其實(shí)這個(gè)方法的目的,主要就是將對(duì)象按字符串的方式輸出出來:打個(gè)比方,比如一個(gè)People類,里邊有name,age這兩個(gè)屬性,
如果你People p = new People();
p.toString();
這么做的話,默認(rèn)輸出就是一個(gè)內(nèi)存地址。
那么你會(huì)想到重寫ToString();這個(gè)方法,按自己的方式去輸出。
比如將toString的方法體改為:return p.name+p.age;
這個(gè)時(shí)候toString輸出的東西就是People這個(gè)類的姓名和年齡了。
toString()是oject方法,所以只要繼承自oject的類都闊以重寫這個(gè)方法。應(yīng)用舉例editText.getText().toString()
2、重寫是指從父類繼承后,子類對(duì)父類某方法的具體實(shí)現(xiàn)進(jìn)行修改,不能修改其方法名,當(dāng)System.out.println(對(duì)象)時(shí),默認(rèn)使用toString()方法,將對(duì)象轉(zhuǎn)為字符串輸出,toString()方法繼承于所有類的隱性基類(所有類的大哥大 Object類),如果某類無重寫toString()方法,這時(shí)調(diào)用toString()將得到(類名+地址名名)這樣的字符串,改成別的方法名應(yīng)該是不會(huì)出錯(cuò)的,是否你添加了重寫標(biāo)記,改成別的方法名是不能稱為“重寫”的。
3、在寫Java代碼的時(shí)候,在后臺(tái)代中想要打印變量的值到控制臺(tái),當(dāng)你打印一個(gè)對(duì)象的時(shí)候,實(shí)際上是調(diào)用對(duì)象的toString()方法!這是在類的定義階段,屬性還沒有初始化 ,就是打印對(duì)象時(shí),打印默認(rèn)的是 對(duì)象.toString(); 可以理解為輸出所有的屬性值;
4、一般out.println(Object) 和 System.out.println(Object),其中輸出的都是Object.toString()方法。重寫toString()方法,可以輸出自己想要的文字信息
注:打印一個(gè)對(duì)象,可以直接System.out.println(p);其實(shí)println方法內(nèi)部會(huì)自動(dòng)調(diào)用p 的 toString() 方法。
總結(jié)
以上就是本文關(guān)于淺談Java編程ToString()方法重寫的意義的全部?jī)?nèi)容,希望對(duì)大家有所幫助。感興趣的朋友可以參閱:Java AtomicInteger類的使用方法詳解、java tostring方法重寫代碼示例、Java系統(tǒng)的高并發(fā)解決方法詳解等。有什么問題可以隨時(shí)留言,歡迎大家交流討論。
相關(guān)文章
基于SpringMVC實(shí)現(xiàn)網(wǎng)頁登錄攔截
SpringMVC的處理器攔截器類似于Servlet開發(fā)中的過濾器Filter,用于對(duì)處理器進(jìn)行預(yù)處理和后處理。因此,本文將為大家介紹如何通過SpringMVC實(shí)現(xiàn)網(wǎng)頁登錄攔截功能,需要的小伙伴可以了解一下2021-12-12如何在Spring?Boot框架中使用攔截器實(shí)現(xiàn)URL限制
在Spring?Boot框架中,您可以使用攔截器(Interceptor)來控制限制URL列表,本文通過一個(gè)簡(jiǎn)單的示例給大家介紹Spring?Boot?攔截器實(shí)現(xiàn)URL限制的操作方法,感興趣的朋友跟隨小編一起看看吧2023-08-08Java(SpringBoot)項(xiàng)目打包(構(gòu)建)成Docker鏡像的幾種常見方式
在對(duì)Spring Boot應(yīng)用程序進(jìn)行Docker化時(shí),為應(yīng)用程序選擇正確的基礎(chǔ)鏡像非常重要,下面這篇文章主要給大家介紹了關(guān)于Java(SpringBoot)項(xiàng)目打包(構(gòu)建)成Docker鏡像的幾種常見方式,需要的朋友可以參考下2023-12-12Java 中一個(gè)類提供一個(gè)默認(rèn)對(duì)象的多種方法
這篇文章主要介紹了Java 中一個(gè)類提供一個(gè)默認(rèn)對(duì)象的多種方法,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-07-07Java中Json與List、Map、entity的互相轉(zhuǎn)化
在開發(fā)中,Json轉(zhuǎn)換的場(chǎng)景往往也就是那么幾個(gè),本文主要介紹了Java中Json與List、Map、entity的互相轉(zhuǎn)化,具有一定的參考價(jià)值,感興趣的可以了解一下2022-07-07java 讀取excel文件轉(zhuǎn)換成json格式的實(shí)例代碼
這篇文章主要介紹了 java 讀取excel文件轉(zhuǎn)換成json格式的實(shí)例代碼,需要的朋友可以參考下2018-04-04Java EasyExcel讀寫excel如何解決poi讀取大文件內(nèi)存溢出問題
這篇文章主要介紹了Java EasyExcel讀寫excel如何解決poi讀取大文件內(nèi)存溢出問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-06-06