最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java中Object toString方法簡(jiǎn)介_(kāi)動(dòng)力節(jié)點(diǎn)Java學(xué)院整理

 更新時(shí)間:2017年05月05日 10:08:15   投稿:mrr  
Object類(lèi)在Java里面是一個(gè)比較特殊的類(lèi),JAVA為了組織這個(gè)類(lèi)組織得比較方便,它提供了一個(gè)最根上的類(lèi),相當(dāng)于所有的類(lèi)都是從這個(gè)類(lèi)繼承,這個(gè)類(lèi)就叫Object。接下來(lái)通過(guò)本文給大家介紹Object toString方法,需要的的朋友參考下吧

一、Object類(lèi)介紹 

Object類(lèi)在Java里面是一個(gè)比較特殊的類(lèi),JAVA只支持單繼承,子類(lèi)只能從一個(gè)父類(lèi)來(lái)繼承,如果父類(lèi)又是從另外一個(gè)父類(lèi)繼承過(guò)來(lái),那他也只能有一個(gè)父類(lèi),父類(lèi)再有父類(lèi),那也只能有一個(gè),JAVA為了組織這個(gè)類(lèi)組織得比較方便,它提供了一個(gè)最根上的類(lèi),相當(dāng)于所有的類(lèi)都是從這個(gè)類(lèi)繼承,這個(gè)類(lèi)就叫Object。所以O(shè)bject類(lèi)是所有JAVA類(lèi)的根基類(lèi),是所有JAVA類(lèi)的老祖宗。所有的類(lèi),不管是誰(shuí),都是從它繼承下來(lái)的。

二、toString方法介紹 

一個(gè)字符串和另外一種類(lèi)型連接的時(shí)候,另外一種類(lèi)型會(huì)自動(dòng)轉(zhuǎn)換成String類(lèi)型,然后再和字符串連接?;A(chǔ)的數(shù)據(jù)類(lèi)型int,float,double轉(zhuǎn)換成字符串比較簡(jiǎn)單,按照它們的數(shù)字轉(zhuǎn)換過(guò)來(lái)就成了,可以引用類(lèi)型呢,Person p = new Person();一個(gè)字符串加上這個(gè)p,你就不知道要怎么把這個(gè)p轉(zhuǎn)換成字符串了,因?yàn)檫@個(gè)p是一個(gè)引用類(lèi)型。 p = new Person();

public class TestToString {
  public static void main(String[] args) {
     Dog d = new Dog();
    /**
     * 如果沒(méi)有重寫(xiě)toString方法,那么輸出來(lái)的默認(rèn)的字符串內(nèi)容是“類(lèi)名+哈希編碼”,
     * 如:dog=cn.galc.test.Dog@150bd4d
     * 這里的d就是一個(gè)引用類(lèi)型,打印的時(shí)候,這個(gè)引用類(lèi)型d會(huì)自動(dòng)調(diào)用toString()方法將自己轉(zhuǎn)換成字符串然后再與字符串”d:=”相連,
     * 然后一起被打印出來(lái)。d為什么可以自動(dòng)調(diào)用toString()方法呢,Dog類(lèi)里面也沒(méi)有聲明這個(gè)toString()方法。
     * 這是因?yàn)閠oString()方法是Object類(lèi)里面的方法,而所有的類(lèi)都是從Object類(lèi)繼承下來(lái)的,
     * Dog類(lèi)當(dāng)然也不例外,所以Dog類(lèi)繼承了Object類(lèi)里面的toString()方法,
     * 所以Dog類(lèi)的對(duì)象當(dāng)然可以直接調(diào)用toString()方法了。
     * 但是Dog類(lèi)對(duì)繼承下來(lái)的toString()方法很不滿意,
     * 因?yàn)槭褂眠@個(gè)繼續(xù)下來(lái)toString()方法將引用對(duì)象轉(zhuǎn)換成字符串輸出時(shí)輸出的是一連串令人看不懂的哈希編碼。
     * 為了使打印出來(lái)的信息使得正常人都能看得懂,因此要在Dog類(lèi)里面把這個(gè)繼承下來(lái)的toString()方法重寫(xiě),
     * 使得調(diào)用這個(gè)toString()方法將引用對(duì)象轉(zhuǎn)換成字符串時(shí)打印出來(lái)的是一些正常的,能看得懂的信息。
     * 在子類(lèi)重寫(xiě)從父類(lèi)繼承下來(lái)的方法時(shí),從父類(lèi)把要重寫(xiě)的方法的聲明直接copy到子類(lèi)里面來(lái),
     * 這樣在子類(lèi)里面重寫(xiě)的時(shí)候就不會(huì)出錯(cuò)了。
     */
     System.out.println("dog="+d);//打印結(jié)果:dog=I'm a cool Dog
   }
 }
 class Dog{
   /**
   * 在這里重寫(xiě)了Object類(lèi)里面的toString()方法后,
   * 引用對(duì)象自動(dòng)調(diào)用時(shí)調(diào)用的就是重寫(xiě)后的toString()方法了,
   * 此時(shí)打印出來(lái)的顯示信息就是我們重寫(xiě)toString()方法時(shí)要返回的字符串信息了,
   * 不再是那些看不懂的哈希編碼了。
   */
   public String toString() {
     return "I'm a Dog";
   }
 }

任何一個(gè)類(lèi)都是從Object類(lèi)繼承下來(lái)的,因此在任何一個(gè)類(lèi)里面都可以重寫(xiě)這個(gè)toString()方法。toString()方法的作用是當(dāng)一個(gè)引用對(duì)象和字符串作連接的時(shí)候,或者是直接打印這個(gè)引用對(duì)象的時(shí)侯,這個(gè)引用對(duì)象都會(huì)自動(dòng)調(diào)用toString()方法,通過(guò)這個(gè)方法返回一個(gè)表示引用對(duì)象自己正常信息的字符串,而這個(gè)字符串的內(nèi)容由我們自己去定義,默認(rèn)的字符串內(nèi)容是“類(lèi)名+哈希編碼”。因此我們可以通過(guò)在類(lèi)里面重寫(xiě)toString()方法,把默認(rèn)的字符串內(nèi)容改成我們自己想要表達(dá)的正常信息的字符串內(nèi)容。

以上所述是小編給大家介紹的Java中Object toString方法簡(jiǎn)介_(kāi)動(dòng)力節(jié)點(diǎn)Java學(xué)院整理,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

相關(guān)文章

  • Java集合ArrayList與LinkedList詳解

    Java集合ArrayList與LinkedList詳解

    這篇文章主要介紹了Java集合ArrayList與LinkedList詳解,對(duì)于ArrayList和LinkedList,他們都是List接口的一個(gè)實(shí)現(xiàn)類(lèi),并且我們知道他們的實(shí)現(xiàn)方式各不相同,例如ArrayList底層實(shí)現(xiàn)是一個(gè)數(shù)組
    2022-08-08
  • spring boot開(kāi)發(fā)遇到坑之spring-boot-starter-web配置文件使用教程

    spring boot開(kāi)發(fā)遇到坑之spring-boot-starter-web配置文件使用教程

    Spring Boot支持容器的自動(dòng)配置,默認(rèn)是Tomcat,當(dāng)然我們也是可以進(jìn)行修改的。這篇文章給大家介紹了spring boot開(kāi)發(fā)遇到坑之spring-boot-starter-web配置文件使用教程,需要的朋友參考下吧
    2018-01-01
  • Java版坦克大戰(zhàn)游戲源碼示例

    Java版坦克大戰(zhàn)游戲源碼示例

    本篇文章主要介紹了Java版坦克大戰(zhàn)游戲源碼示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-10-10
  • JVM內(nèi)存結(jié)構(gòu)相關(guān)知識(shí)解析

    JVM內(nèi)存結(jié)構(gòu)相關(guān)知識(shí)解析

    這篇文章主要介紹了JVM內(nèi)存結(jié)構(gòu)相關(guān)知識(shí)解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-11-11
  • SpringBoot項(xiàng)目打包三方JAR的示例代碼

    SpringBoot項(xiàng)目打包三方JAR的示例代碼

    本篇文章主要介紹了SpringBoot項(xiàng)目打包三方JAR的示例代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-09-09
  • springSecurity+jwt使用小結(jié)

    springSecurity+jwt使用小結(jié)

    本文介紹了使用Spring Security與JWT進(jìn)行身份驗(yàn)證和授權(quán),實(shí)現(xiàn)用戶認(rèn)證和授權(quán)的詳細(xì)流程,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-11-11
  • Intellij IDEA神器居然還有這些小技巧

    Intellij IDEA神器居然還有這些小技巧

    Intellij IDEA真是越用越覺(jué)得它強(qiáng)大,它總是在我們寫(xiě)代碼的時(shí)候,不時(shí)給我們來(lái)個(gè)小驚喜,本文給大家主要介紹一些你可能不知道的但是又實(shí)用的小技巧,感興趣的朋友跟隨小編一起看看吧
    2021-01-01
  • Spring AOP 的組成和實(shí)現(xiàn)

    Spring AOP 的組成和實(shí)現(xiàn)

    這篇文章主要介紹了Spring AOP 的組成和實(shí)現(xiàn),AOP 是一種思想,Spring AOP 是這種思想的具體實(shí)現(xiàn),本文結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2023-07-07
  • Kibana的安裝和配置全過(guò)程

    Kibana的安裝和配置全過(guò)程

    Kibana是一個(gè)開(kāi)源的數(shù)據(jù)分析和可視化平臺(tái),它與Elasticsearch緊密集成,提供了一個(gè)直觀的Web界面,使您可以快速地搜索、分析和可視化數(shù)據(jù),在本文中,我們將介紹如何安裝和配置Kibana
    2024-12-12
  • 深入理解Java設(shè)計(jì)模式之適配器模式

    深入理解Java設(shè)計(jì)模式之適配器模式

    這篇文章主要介紹了JAVA設(shè)計(jì)模式之適配器模式的的相關(guān)資料,文中示例代碼非常詳細(xì),供大家參考和學(xué)習(xí),感興趣的朋友可以了解
    2021-11-11

最新評(píng)論

慈利县| 西充县| 乡宁县| 高邮市| 建昌县| 贡嘎县| 京山县| 哈巴河县| 深圳市| 丰顺县| 南澳县| 大厂| 南陵县| 岑溪市| 定远县| 平和县| 长阳| 禹城市| 东乡| 读书| 理塘县| 阆中市| 陆良县| 太原市| 东港市| 洮南市| 温宿县| 丰台区| 绥芬河市| 胶州市| 阿图什市| 上虞市| 平顺县| 阿勒泰市| 寻甸| 长春市| 台南县| 巴马| 锡林郭勒盟| 图片| 万山特区|