国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專(zhuān)欄INFORMATION COLUMN

java:方法覆蓋與方法重載

KunMinX / 3321人閱讀

摘要:覆蓋必須滿足以下條件子類(lèi)方法的名稱(chēng)參數(shù)簽名和返回類(lèi)型必須與父類(lèi)方法保持一致。子類(lèi)方法不能縮小父類(lèi)方法的訪問(wèn)權(quán)限。

方法簽名

方法簽名是指方法的參數(shù)類(lèi)型,順序和個(gè)數(shù).不包含方法名稱(chēng).

重載

重載必須滿足以下條件

方法名 相同

方法的參數(shù)類(lèi)型,個(gè)數(shù)和順序至少一項(xiàng)不同

方法的返回類(lèi)型可以不同

方法的訪問(wèn)權(quán)限修飾符可以不同

覆蓋

如果在子類(lèi)中定義的一個(gè)方法,其名稱(chēng),返回類(lèi)型及參數(shù)簽名正好與父類(lèi)中某個(gè)方法的名稱(chēng)、返回類(lèi)型及參數(shù)簽名相匹配,那么子類(lèi)覆蓋了父類(lèi)的方法。
覆蓋必須滿足以下條件:

子類(lèi)方法的名稱(chēng)、參數(shù)簽名和返回類(lèi)型必須與父類(lèi)方法保持一致。

子類(lèi)方法不能縮小父類(lèi)方法的訪問(wèn)權(quán)限。

如果沒(méi)有這個(gè)限制,會(huì)與java語(yǔ)言的多態(tài)機(jī)制發(fā)生沖突。

  //創(chuàng)建父類(lèi)型的變量,引用子類(lèi)的實(shí)例
  Parent parent = new Child();
  //調(diào)用的是子類(lèi)實(shí)例的方法,如果子類(lèi)覆蓋這個(gè)方法時(shí),縮小了訪問(wèn)權(quán)限,可能會(huì)造成無(wú)法訪問(wèn)到子類(lèi)實(shí)例的這個(gè)方法
  parent.method();

子類(lèi)方法不能拋出比父類(lèi)方法更多的異常.子類(lèi)方法拋出的異常必須與父類(lèi)方法拋出的異常相同,或者父類(lèi)方法拋出的異常類(lèi)是父類(lèi)方法拋出異常類(lèi)的子類(lèi).

方法覆蓋只存在于子類(lèi)和父類(lèi)(包括直接父類(lèi)和間接父類(lèi))之間.在同一個(gè)類(lèi)中方法只能被重載,不能被覆蓋.

父類(lèi)的靜態(tài)方法不能被子類(lèi)覆蓋為非靜態(tài)方法.

父類(lèi)的非靜態(tài)方法不能被子類(lèi)覆蓋為靜態(tài)方法

父類(lèi)的私有方法不能被子類(lèi)覆蓋

父類(lèi)的非抽象方法可以被子類(lèi)覆蓋為抽象方法

異同

相同點(diǎn)

方法名要保持一致

不同點(diǎn)

方法覆蓋要求參數(shù)簽名一致,而方法重載要求參數(shù)簽名必須不一致.

覆蓋要求返回類(lèi)型一致,或者子類(lèi)方法返回類(lèi)型小于父類(lèi)方法,重載對(duì)此不做限制.

覆蓋只能用于子類(lèi)覆蓋父類(lèi)的方法,重載用于同一個(gè)類(lèi)的所有方法(包括從父類(lèi)中繼承而來(lái)的方法).

覆蓋對(duì)方法的訪問(wèn)權(quán)限和拋出異常有要求,重載不做限制.

父類(lèi)的一個(gè)方法只能被子類(lèi)覆蓋一次,而一個(gè)方法在所在的類(lèi)中可以被重載多次.

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/77423.html

相關(guān)文章

  • 第3章:抽象數(shù)據(jù)類(lèi)型(ADT)和面向?qū)ο缶幊蹋∣OP) 3.4面向?qū)ο缶幊蹋∣OP)

    摘要:抽象數(shù)據(jù)類(lèi)型的多個(gè)不同表示可以共存于同一個(gè)程序中,作為實(shí)現(xiàn)接口的不同類(lèi)。封裝和信息隱藏信息隱藏將精心設(shè)計(jì)的模塊與不好的模塊區(qū)分開(kāi)來(lái)的唯一最重要的因素是其隱藏內(nèi)部數(shù)據(jù)和其他模塊的其他實(shí)施細(xì)節(jié)的程度。 大綱 面向?qū)ο蟮臉?biāo)準(zhǔn)基本概念:對(duì)象,類(lèi),屬性,方法和接口OOP的獨(dú)特功能 封裝和信息隱藏 繼承和重寫(xiě) 多態(tài)性,子類(lèi)型和重載 靜態(tài)與動(dòng)態(tài)分派 Java中一些重要的Object方法設(shè)計(jì)好的類(lèi)面向...

    Heier 評(píng)論0 收藏0
  • Java 面向?qū)ο筇匦灾鄳B(tài)性

    摘要:多態(tài)性面向?qū)ο笕筇匦苑庋b繼承多態(tài)。面向?qū)ο蠖鄳B(tài)性存在的三個(gè)必要條件繼承重寫(xiě)父類(lèi)引用指向子類(lèi)對(duì)象多態(tài)性的實(shí)現(xiàn)方式重寫(xiě)與重載靜態(tài)多態(tài)性方法重載方法重載允許類(lèi)具有多個(gè)相同名稱(chēng)的方法,但是方法參數(shù)列表不同。 多態(tài)性 面向?qū)ο螅∣OP)三大特性:封裝、繼承、多態(tài)。 多態(tài)性(polymorphism)指同一行為具有多種不同表現(xiàn)形式,在面向?qū)ο蟪绦蛟O(shè)計(jì)中表現(xiàn)為同一消息可以根據(jù)發(fā)送對(duì)象的類(lèi)型不同,做...

    _ang 評(píng)論0 收藏0
  • Java類(lèi)的繼承

    摘要:的繼承具有單繼承的特點(diǎn),每個(gè)子類(lèi)只有一個(gè)直接父類(lèi)。繼承的特點(diǎn)的繼承通過(guò)關(guān)鍵字來(lái)實(shí)現(xiàn),實(shí)現(xiàn)繼承的類(lèi)被稱(chēng)為子類(lèi),被繼承的類(lèi)被稱(chēng)為父類(lèi),有的也稱(chēng)其為基類(lèi)超類(lèi)。是提供的一個(gè)關(guān)鍵字,用于限定該對(duì)象調(diào)用它從父類(lèi)繼承得到的實(shí)例變量或方法。 繼承是面向?qū)ο蟮娜筇卣髦唬彩擒浖?fù)用的重要手段。Java的繼承具有單繼承的特點(diǎn),每個(gè)子類(lèi)只有一個(gè)直接父類(lèi)。 繼承的特點(diǎn) Java的繼承通過(guò)extends關(guān)鍵...

    seanHai 評(píng)論0 收藏0
  • 【面試】Java基礎(chǔ)的那些事-Two

    摘要:前言面試中對(duì)于技術(shù)職位,一般分筆試與面談,如果面試官的一些小問(wèn)題你可以立馬找到對(duì)應(yīng)的知識(shí)點(diǎn)擴(kuò)展開(kāi)來(lái),那么這就是你的優(yōu)勢(shì),本系列將講述一些面試中的事,不會(huì)很詳細(xì),但是應(yīng)該比較全面吧。 前言 面試中對(duì)于技術(shù)職位,一般分筆試與面談,如果面試官的一些小問(wèn)題你可以立馬找到對(duì)應(yīng)的知識(shí)點(diǎn)擴(kuò)展開(kāi)來(lái),那么這就是你的優(yōu)勢(shì),本系列將講述一些java面試中的事,不會(huì)很詳細(xì),但是應(yīng)該比較全面吧。 主要內(nèi)容 pa...

    you_De 評(píng)論0 收藏0
  • Java 面向?qū)ο螅ㄉ希?/b>

    摘要:對(duì)象的引用關(guān)鍵字總是指向調(diào)用該方法的對(duì)象。根據(jù)出現(xiàn)位置的不同,作為對(duì)象的默認(rèn)引用有兩種情形。構(gòu)造器中引用該構(gòu)造器正在初始化的對(duì)象。如果同一個(gè)類(lèi)中包含了兩個(gè)或兩個(gè)以上方法的方法名相同,但形參列表不同,則被稱(chēng)為方法重載。 類(lèi)和對(duì)象 定義類(lèi) 面向?qū)ο蟮某绦蛟O(shè)計(jì)過(guò)程中有兩個(gè)重要概念:類(lèi)(class)和對(duì)象(object,也被稱(chēng)為實(shí)例,instance),其中類(lèi)是某一批對(duì)象的抽象,可以把類(lèi)理解成...

    SimonMa 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<