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

詳解 Java繼承關(guān)系下的構(gòu)造方法調(diào)用

 更新時(shí)間:2017年10月13日 11:46:04   作者:ccpat  
這篇文章主要介紹了詳解 Java繼承關(guān)系下的構(gòu)造方法調(diào)用的相關(guān)資料,希望通過(guò)本文能幫助到大家,讓大家理解掌握這部分內(nèi)容,需要的朋友可以參考下

詳解 Java繼承關(guān)系下的構(gòu)造方法調(diào)用

在Java中創(chuàng)建一個(gè)類的對(duì)象時(shí),如果該類存在父類,則先調(diào)用父類的構(gòu)造方法,然后再調(diào)用子類的構(gòu)造方法。如果父類沒(méi)有定義構(gòu)造方法,則調(diào)用編譯器自動(dòng)創(chuàng)建的不帶參數(shù)的默認(rèn)構(gòu)造方法。如果父類定義了public的無(wú)參的構(gòu)造方法,則在調(diào)用子類的構(gòu)造方法前會(huì)自動(dòng)先調(diào)用該無(wú)參的構(gòu)造方法。如果父類只有有參的構(gòu)造方法,沒(méi)有無(wú)參的構(gòu)造方法,則子類必須在構(gòu)造方法中必須顯式調(diào)用super(參數(shù)列表)來(lái)指定某個(gè)有參的構(gòu)造方法。如果父類定義有無(wú)參的構(gòu)造方法,但無(wú)參的構(gòu)造方法聲明為private,則子類同樣必須在構(gòu)造方法中必須顯式調(diào)用super(參數(shù)列表)來(lái)指定某個(gè)有參的構(gòu)造方法。如果父類沒(méi)有其他的有參構(gòu)造方法,則子類無(wú)法創(chuàng)建。

有父類 子類
Public無(wú)參構(gòu)造方法 Private無(wú)參構(gòu)造方法 有參構(gòu)造方法
無(wú) 無(wú) 無(wú) 所有構(gòu)造方法都會(huì)調(diào)用父類的默認(rèn)構(gòu)造方法
無(wú) 無(wú) 所有構(gòu)造方法都會(huì)調(diào)用定義的無(wú)參構(gòu)造方法
無(wú) 無(wú) 所有構(gòu)造方法都必須指定調(diào)用某個(gè)有參的構(gòu)造方法,或通過(guò)this調(diào)用某個(gè)其他的構(gòu)造方法。
無(wú) 可以指定調(diào)用某個(gè)構(gòu)造方法,如果沒(méi)有指定,則調(diào)用無(wú)參構(gòu)造方法。
無(wú) 無(wú) 子類無(wú)法構(gòu)造(父類無(wú)法派生子類)
無(wú) 所有構(gòu)造方法都必須指定調(diào)用某個(gè)有參的構(gòu)造方法,或通過(guò)this調(diào)用某個(gè)其他的構(gòu)造方法。

例如:

class Parent {
  private String pString;
  Parent(){
    pString = "p1";
  }
}

class Child extends Parent {
  private String cString;
  Child() {
    cString = "c1";
  }
}

當(dāng)Child對(duì)象創(chuàng)建時(shí),會(huì)先調(diào)用父類Parent的構(gòu)造方法將pString初始化為”p1”,然后再調(diào)用Child的構(gòu)造方法,將cString初始化為”c1”。

class Parent {
  private String pString;
  private Parent(){
    pString = "p1";
  }
  Parent(String s){
    pString = "p2";
  }
}

class Child extends Parent {
  private String cString;
  Child() {
    super("");
    cString = "c1";
  }
}

由于父類定義了private的無(wú)參構(gòu)造方法,因此,在子類中必須顯式指定調(diào)用某個(gè)有參的構(gòu)造方法。

如有疑問(wèn)請(qǐng)留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

  • SpringMVC框架和SpringBoot項(xiàng)目中控制器的響應(yīng)結(jié)果深入分析

    SpringMVC框架和SpringBoot項(xiàng)目中控制器的響應(yīng)結(jié)果深入分析

    這篇文章主要介紹了SpringMVC框架和SpringBoot項(xiàng)目中控制器的響應(yīng)結(jié)果,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧
    2022-12-12
  • Java Web開發(fā)防止多用戶重復(fù)登錄的完美解決方案

    Java Web開發(fā)防止多用戶重復(fù)登錄的完美解決方案

    在web項(xiàng)目開發(fā)中,很多情況下都可以讓同一個(gè)賬號(hào)信息在不同的登錄入口登錄很多次,這樣子做的不是很完善。一般解決這種情況有兩種解決方案,小編呢主要以第二種方式給大家介紹具體的實(shí)現(xiàn)方法,對(duì)java web 防止多用戶重復(fù)登錄的解決方案感興趣的朋友一起看看吧
    2016-11-11
  • SpringBoot使用自定義注解實(shí)現(xiàn)數(shù)據(jù)脫敏過(guò)程詳細(xì)解析

    SpringBoot使用自定義注解實(shí)現(xiàn)數(shù)據(jù)脫敏過(guò)程詳細(xì)解析

    這篇文章主要介紹了SpringBoot自定義注解之脫敏注解詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • Spring Aware標(biāo)記接口使用案例解析

    Spring Aware標(biāo)記接口使用案例解析

    這篇文章主要介紹了Spring Aware標(biāo)記接口使用案例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-04-04
  • 淺談Java堆外內(nèi)存之突破JVM枷鎖

    淺談Java堆外內(nèi)存之突破JVM枷鎖

    這篇文章主要介紹了淺談Java堆外內(nèi)存之突破JVM枷鎖,涉及jvm內(nèi)存分配,jvm垃圾回收,堆外內(nèi)存的垃圾回收等相關(guān)內(nèi)容,具有一定參考價(jià)值,需要的朋友可以了解下。
    2017-11-11
  • Java中System.currentTimeMillis()計(jì)算方式與時(shí)間單位轉(zhuǎn)換講解

    Java中System.currentTimeMillis()計(jì)算方式與時(shí)間單位轉(zhuǎn)換講解

    本文詳細(xì)講解了Java中System.currentTimeMillis()計(jì)算方式與時(shí)間單位轉(zhuǎn)換,對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-12-12
  • Java使用wait/notify實(shí)現(xiàn)線程間通信上篇

    Java使用wait/notify實(shí)現(xiàn)線程間通信上篇

    wait()和notify()是直接隸屬于Object類,也就是說(shuō)所有對(duì)象都擁有這一對(duì)方法,下面這篇文章主要給大家介紹了關(guān)于使用wait/notify實(shí)現(xiàn)線程間通信的相關(guān)資料,需要的朋友可以參考下
    2022-12-12
  • AndroidStudio無(wú)法新建Java工程的簡(jiǎn)單解決辦法

    AndroidStudio無(wú)法新建Java工程的簡(jiǎn)單解決辦法

    AS創(chuàng)建java工程是非常麻煩的,AS沒(méi)有提供直接創(chuàng)建java工程的方法且常常無(wú)法新建,這篇文章主要給大家介紹了關(guān)于AndroidStudio無(wú)法新建Java工程的簡(jiǎn)單解決辦法,需要的朋友可以參考下
    2024-06-06
  • 責(zé)任鏈模式在spring security過(guò)濾器鏈中的應(yīng)用小結(jié)

    責(zé)任鏈模式在spring security過(guò)濾器鏈中的應(yīng)用小結(jié)

    責(zé)任鏈模式在SpringSecurity過(guò)濾器鏈中的應(yīng)用,通過(guò)一系列的過(guò)濾器按順序處理請(qǐng)求,每個(gè)過(guò)濾器負(fù)責(zé)特定的安全功能,實(shí)現(xiàn)靈活且可擴(kuò)展的請(qǐng)求處理機(jī)制,感興趣的朋友跟隨小編一起看看吧
    2024-11-11
  • 利用hadoop查詢兩兩之間有共同好友及他倆的共同好友都是誰(shuí)

    利用hadoop查詢兩兩之間有共同好友及他倆的共同好友都是誰(shuí)

    一想到要實(shí)現(xiàn)求共同好友的功能,很多人都會(huì)想到redis來(lái)實(shí)現(xiàn)。但是redis存儲(chǔ)和數(shù)據(jù)和計(jì)算時(shí)需要耗費(fèi)較多的內(nèi)存資源。所以文本將介紹另一種方法,即利用Hadoop中的MapReduce來(lái)實(shí)現(xiàn),感興趣的可以了解一下
    2022-01-01

最新評(píng)論

东兰县| 屯门区| 麻城市| 塔河县| 德阳市| 离岛区| 土默特右旗| 宁明县| 高尔夫| 五台县| 古交市| 石河子市| 开阳县| 辽阳市| 连平县| 维西| 太仆寺旗| 万年县| 宁海县| 宜宾县| 京山县| 沂源县| 永吉县| 古丈县| 西和县| 政和县| 杭锦旗| 门源| 潞西市| 嘉禾县| 武宁县| 乐业县| 县级市| 贵州省| 常德市| 赣榆县| 永寿县| 通州区| 临安市| 肥东县| 邓州市|