亚洲一区爱区精品无码_无码熟妇人妻AV_日本免费一区二区三区最新_国产AV寂寞骚妇

方法重載與覆蓋的區(qū)別3篇

時間:2024-12-21 17:10:00 綜合范文

  下面是范文網(wǎng)小編收集的方法重載與覆蓋的區(qū)別3篇,以供參考。

方法重載與覆蓋的區(qū)別3篇

方法重載與覆蓋的區(qū)別1

  一、方法重寫(0veriding)

  在Java程序中,類的繼承關(guān)系可以產(chǎn)生一個子類,子類繼承父類,它具備了父類所有的特征,繼承了父類所有的方法和變量。

  子類可以定義新的特征,當(dāng)子類需要修改父類的一些方法進行擴展,增大功能,程序設(shè)計者常常把這樣的一種操作方法稱為重寫,也叫稱為覆寫或覆蓋。

  重寫體現(xiàn)了Java優(yōu)越性,重寫是建立在繼承關(guān)系上,它使語言結(jié)構(gòu)更加豐富。在Java中的繼承中,子類既可以隱藏和訪問父類的方法,也可以覆蓋繼承父類的方法。

  在Java中覆蓋繼承父類的方法就是通過方法的重寫來實現(xiàn)的。所謂方法的重寫是指子類中的方法與父類中繼承的方法有完全相同的返回值類型、方法名、參數(shù)個數(shù)以及參數(shù)類型。

  這樣,就可以實現(xiàn)對父類方法的覆蓋。如果子類將父類中的方法重寫了,調(diào)用的時候肯定是調(diào)用被重寫過的方法,那么如果現(xiàn)在一定要調(diào)用父類中的方法該怎么辦呢?

  此時,通過使用super關(guān)鍵就可以實現(xiàn)這個功能,super關(guān)鍵字可以從子類訪問父類中的內(nèi)容,如果要訪問被重寫過的方法,使用“super.方法名(參數(shù)列表)”的形式調(diào)用。

  如果要使用super關(guān)鍵字不一定非要在方法重寫之后使用,也可以明確地表示某個方法是從父類中繼承而來的。使用super只是更加明確的說,要從父類中查找,就不在子類查找了。

  二、重寫規(guī)則

  在重寫方法時,需要遵循以下的規(guī)則:

  (一) 父類方法的參數(shù)列表必須完全與被子類重寫的方法的參數(shù)列表相同,否則不能稱其為重寫而是重載。

  (二) 父類的返回類型必須與被子類重寫的方法返回類型相同,否則不能稱其為重寫而是重載。..

  (三) Java中規(guī)定,被子類重寫的方法不能擁有比父類方法更加嚴(yán)格的訪問權(quán)限。編寫過Java程序的人就知道,

  父類中的方法并不是在任何情況下都可以重寫的,當(dāng)父類中方法的訪問權(quán)限修飾符為private時,該方法只能被自己的類訪問,

  不能被外部的類訪問,在子類是不能被重寫的。如果定義父類的方法為public,在子類定義為private,程序運行時就會報錯。

  (四) 由于父類的訪問權(quán)限修飾符的限制一定要大于被子類重寫方法的訪問權(quán)限修飾符,而private權(quán)限最小。

  所以如果某一個方法在父類中的訪問權(quán)限是private,那么就不能在子類中對其進行重寫。如果重新定義,也只是定義了一個新的方法,不會達到重寫的效果。

  (五) 在繼承過程中如果父類當(dāng)中的方法拋出異常,那么在子類中重寫父類的該方法時,也要拋出異常,

  而且拋出的異常不能多于父類中拋出的異常(可以等于父類中拋出的異常)。換句話說,重寫方法一定不能拋出新的檢查異常,

  或者比被重寫方法聲明更加寬泛的檢查型異常。例如,父類的一個方法申明了一個檢查異常IOException,在重寫這個方法時就不能拋出Exception,

  只能拋出IOException的子類異常,可以拋出非檢查異常。同樣的道理,如果子類中創(chuàng)建了一個成員變量,

  而該變量和父類中的一個變量名稱相同,稱作變量重寫或?qū)傩愿采w。但是此概念一般很少有人去研究它,因為意義不大。

  三、方法重載(Overloading)

  方法重載是讓類以統(tǒng)一的方式處理不同類型數(shù)據(jù)的一種手段。調(diào)用方法時通過傳遞給它們的不同個數(shù)和類型的參數(shù)來決定具體使用哪個方法,這就是多態(tài)性。

  所謂方法重載是指在一個類中,多個方法的方法名相同,但是參數(shù)列表不同。參數(shù)列表不同指的`是參數(shù)個數(shù)、參數(shù)類型或者參數(shù)的順序不同。

  方法的重載在實際應(yīng)用中也會經(jīng)常用到。不僅是一般的方法,構(gòu)造方法也可以重載。

  在方法重載時,方法之間需要存在一定的聯(lián)系,因為這樣可以提高程序的可讀性,一般只重載功能相似的方法。

  重載是指我們可以定義一些名稱相同的方法,通過定義不同的參數(shù)來區(qū)分這些方法,然后再調(diào)用時,Java虛擬機就會根據(jù)不同的參數(shù)列表來選擇合適的方法執(zhí)行。也就是說,當(dāng)一個重載方法被調(diào)用時,Java用參數(shù)的類型或個數(shù)來決定實際調(diào)用的重載方法。因此,每個重載方法的參數(shù)的類型或個數(shù)必須是不同。

  雖然每個重載方法可以有不同的返回類型,但返回類型并不足以區(qū)分所使用的是哪個方法。

  當(dāng)Java調(diào)用一個重載方法是,參數(shù)與調(diào)用參數(shù)匹配的方法被執(zhí)行。在使用重載要注意以下的幾點:

  1.在使用重載時只能通過不同的參數(shù)列表,必須具有不同的參數(shù)列表。

  2.不能通過訪問權(quán)限、返回類型、拋出的異常進行重載。

  3.方法的異常類型和數(shù)目不會對重載造成影響。

  4.可以有不同的返回類型,只要參數(shù)列表不同就可以了。

  5.可以有不同的訪問修飾符。

  6.可以拋出不同的異常。

  四、方法重寫與方法重載的區(qū)別

  方法重寫(方法覆蓋)

  概念:子類繼承父類中的方法,想在原有的基礎(chǔ)上作一定的修改。

  格式特點:

  1.方法名、參數(shù)列表必須完全一致

  2.返回類型可以相同,也可以不同,不同必須是原來返回類型的子類型(可隱式轉(zhuǎn)換即可)JAVA近期版本的新特性,在之前子類返回值類型必須和父類返回值類型保持一致

  2.子類拋出的異常下不能超過父類相應(yīng)方法拋出的異常(子類異常不能大于父類異常)

  3.子類方法的訪問級別不能低于父類相應(yīng)方法的訪問級別(子類訪問級別不能低于父類訪問級別)

  方法重載

  概念:在同一個類中,允許存在一個以上的同名函數(shù),只要它們的參數(shù)個數(shù)或者參數(shù)類型不同即可。

  格式特點:

  1.方法名相同。

  2.方法的參數(shù)表必須不同

  如果參數(shù)個數(shù)不同,就不管它的參數(shù)類型了!

  如果參數(shù)個數(shù)相同,那么參數(shù)的類型必須不同。

  3.方法的返回類型、修飾符可以相同,也可不同。

方法重載與覆蓋的區(qū)別2

  一、重載和覆蓋

  多態(tài)性也是面向?qū)ο蠓椒ǖ囊粋€重要特性。多態(tài)性是指在在程序中出現(xiàn)的"重名"現(xiàn)象,即在一個程序中相同的名字可以表示不同的實現(xiàn)。

  在JAVA中,多態(tài)性主要表現(xiàn)在如下兩個方面:

 ?。?)方法重載。通常指在同一個類中,相同的方法名對應(yīng)著不同的方法實現(xiàn),但是方法的參數(shù)不同。

  (2)成員覆蓋。通常指在不同類(父類和子類)中,允許有相同的變量名,但是數(shù)據(jù)類型不同;也允許有相同的方法名,但是對應(yīng)的方法實現(xiàn)不同。

  在重載的情況下,同一類中具有相同的名字的方法。如何選擇它的方法體呢?不能使用類名來區(qū)分,通常采用不同的方法形參表,區(qū)分重載要求形參在類型,個數(shù)和順序的不同,在定義重載方法時,應(yīng)在方法的形參的類型,個數(shù)和順序有所不同,以便在選擇時能夠區(qū)別開來。

  在覆蓋的'情況下,同名的方法存在于不同的類中,在調(diào)用方法只要指明其方法所歸屬的類名就可以了。

  二、重載和覆蓋的區(qū)別

  在同一個類中方法成員的名稱相同,但參數(shù)的類型和個數(shù)不同,這稱為重載。

  在存在繼承關(guān)系的兩個話,子類與父類的方法成員名稱相同、參數(shù)的類型和個數(shù)相同的話,子類的方法覆蓋父類的方法,這稱為覆蓋。

方法重載與覆蓋的區(qū)別3

  方法重載(Overload)是指在一個java類的定義中,可以定義多個相同名字的方法,那么只需要這些方法的參數(shù)不同就可以,這個就叫做方法重載。

  方法重載概括成一句話就是同名不同參。同名是指方法名相同,不同參是指參數(shù)個數(shù)不同,參數(shù)的類型不同(其中在參數(shù)類型不同時,參數(shù)的順序不同也可以),

  方法重載只和方法名和方法參數(shù)有關(guān),和方法的參數(shù)名字以及方法的返回值無關(guān),

  其中方法的參數(shù)名字以及方法的返回值與方法重載無關(guān)。

  方法重寫(Override)是指在子類中定義了一個方法,并且這個方法的返回類型,方法名以及方法參數(shù)類型,參數(shù)個數(shù)與從父類繼承過來的方法完全相同,那么我們就說子類這個方法重寫了父類的方法。

  其中子類的'訪問修飾符在重寫這個方法時候不能必須大于或等于父類的訪問修飾符。

  如果父類的方法有異常聲明,那么子類中聲明拋出異常類型不能比父類的范圍廣。

  子類一旦重寫了父類的方法,就會將父類的這個方法隱藏或覆蓋,如果子類對象調(diào)用這個方法,調(diào)用的是重寫后的方法。那么想調(diào)用這個隱藏方法怎么辦呢?java中提供了super關(guān)鍵字來實現(xiàn)。

  通過上面對它們定義以及特點的理解,下面再來總結(jié)它們之間的區(qū)別。

  1.方法重載是發(fā)生一個類當(dāng)中,而方法重寫是發(fā)生在子類和父類之間,是在繼承下面發(fā)生的。

  2.方法重載能夠改變方法的返回值,而方法重寫不可以。

  3.方法重載和方法重寫都是java多態(tài)的一種體現(xiàn),區(qū)別在于方法重載是編譯時的多態(tài),而方法重寫則是運行時的多態(tài)。

方法重載與覆蓋的區(qū)別3篇相關(guān)文章:

最新選擇床褥的方法推薦床褥和床墊的區(qū)別3篇(床褥床墊和床褥的區(qū)別是什么)

飼養(yǎng)珍珠龜?shù)姆椒ㄕ渲辇敽筒蔟數(shù)膮^(qū)別2篇 珍珠龜與草龜?shù)膮^(qū)別


亚洲一区爱区精品无码_无码熟妇人妻AV_日本免费一区二区三区最新_国产AV寂寞骚妇

                        91麻豆国产精品久久| 亚洲图片欧美综合| 日本一二三不卡| 国产精品久久网站| 色欧美片视频在线观看在线视频| 午夜av一区二区| 成人欧美一区二区三区视频网页| 久久久噜噜噜久久中文字幕色伊伊| 国产99久久久久| 美女看a上一区| 久久成人免费网| 久久疯狂做爰流白浆xx| 国产精品一区二区免费不卡| 国产乱码字幕精品高清av| av福利精品导航| 欧美日韩成人高清| 日韩电影免费在线看| 91福利国产精品| 欧美乱妇15p| 成人性视频网站| 3atv在线一区二区三区| 亚洲欧美日韩电影| 亚洲成人中文在线| 国产精品福利在线播放| 色综合久久66| 欧美日韩精品欧美日韩精品一| 欧美性受xxxx| 91精品婷婷国产综合久久竹菊| 美国一区二区三区在线播放| 国产精品灌醉下药二区| 日韩三级高清在线| 欧美aaa在线| 欧美高清hd18日本| 久久免费的精品国产v∧| 欧美最猛黑人xxxxx猛交| 欧美精品1区2区| 国产精品成人在线观看| 91免费视频大全| 99久久久久免费精品国产| 7777精品伊人久久久大香线蕉完整版| 亚洲素人一区二区| 中文字幕一区在线| 亚洲欧美日韩国产中文在线| 国产精品久久一级| 亚洲一区在线观看视频| 蜜桃一区二区三区四区| 色综合久久中文字幕| 99精品欧美一区二区三区综合在线| 国产精品欧美经典| 午夜电影网亚洲视频| 国产成人三级在线观看| 成人伦理片在线| 欧美二区三区91| 欧美精品日日鲁夜夜添| 高清成人在线观看| 不卡的av在线| 欧美老肥妇做.爰bbww视频| 久久尤物电影视频在线观看| 亚洲aⅴ怡春院| 欧美一级视频精品观看| 99久久国产免费看| 国产亚洲精品aa午夜观看| 喷水一区二区三区| 日韩免费一区二区三区在线播放| 午夜精品久久久久| 一区二区三区四区视频精品免费| 一区二区三区av电影| 六月丁香综合在线视频| 日韩欧美一卡二卡| 国产亚洲欧美日韩在线一区| 欧美男女性生活在线直播观看| 精品一区二区三区的国产在线播放| 午夜影院在线观看欧美| 亚洲精品免费视频| 日韩欧美一级二级三级| 一区二区在线观看不卡| 欧美大片一区二区三区| 色婷婷av久久久久久久| 天天av天天翘天天综合网| 国产视频一区在线观看| 亚洲欧洲国产日韩| 久久国产精品第一页| 日本不卡视频在线| 亚洲精品一区二区三区99| 99精品国产99久久久久久白柏| 欧美大胆一级视频| 久久香蕉国产线看观看99| 午夜精品久久久久久久99樱桃| 国产亚洲一本大道中文在线| 一区二区三区美女视频| 亚洲一区二区三区中文字幕在线| 日本一区二区动态图| 国产精品538一区二区在线| 北条麻妃国产九九精品视频| 香蕉成人伊视频在线观看| 亚洲午夜在线观看视频在线| 成人亚洲精品久久久久软件| 久久婷婷色综合| 中文在线免费一区三区高中清不卡| 秋霞av亚洲一区二区三| 不卡的看片网站| 欧美色视频一区| 亚洲色图另类专区| 91久久精品日日躁夜夜躁欧美| 亚洲天堂久久久久久久| 中文在线资源观看网站视频免费不卡| 欧美日韩国产精选| 国产一区二区在线观看视频| 欧美久久一区二区| 国产成人免费视频网站高清观看视频| 久久久国产综合精品女国产盗摄| 成人精品一区二区三区四区| 日韩成人免费看| 91丨国产丨九色丨pron| 国产亚洲欧美日韩日本| 欧美精品v日韩精品v韩国精品v| 五月婷婷久久丁香| 亚洲自拍偷拍网站| 国产欧美综合在线| 一区二区三区蜜桃网| 在线精品视频免费播放| 91精品国产高清一区二区三区蜜臀| 成人av手机在线观看| 国产精品国产三级国产aⅴ原创| 26uuu另类欧美亚洲曰本| 欧美videos大乳护士334| 中文字幕在线一区免费| 欧美不卡123| 色吊一区二区三区| 日本二三区不卡| 成人app在线观看| 蜜臀99久久精品久久久久久软件| 成人综合婷婷国产精品久久免费| 中文字幕亚洲视频| 午夜久久久久久久久| 欧美在线免费观看亚洲| 中文乱码免费一区二区| 成人免费一区二区三区视频| 亚洲大片在线观看| 亚洲免费大片在线观看| 免费在线观看不卡| 国产欧美日本一区视频| 欧美丝袜第三区| 日韩二区在线观看| 欧美成人一区二区三区在线观看| 国产午夜亚洲精品不卡| 国产精品国产成人国产三级| 日韩精品自拍偷拍| 亚洲高清三级视频| 亚洲一区视频在线观看视频| 久久综合色综合88| 免费成人在线播放| 欧美伊人久久久久久午夜久久久久| 99久久国产综合精品色伊| 国产欧美精品日韩区二区麻豆天美| 成人app在线| 专区另类欧美日韩| 国产精品欧美久久久久一区二区| 亚洲欧美日韩精品久久久久| 国产在线精品一区二区夜色| 久久综合一区二区| 色综合久久综合网97色综合| 亚洲视频在线观看三级| 欧美情侣在线播放| 亚洲va国产va欧美va观看| 国产精品免费网站在线观看| 欧美日韩亚洲综合| 国产一区欧美一区| 久久精品网站免费观看| 欧美精品一区二区不卡| 亚洲国产精品成人综合| 亚洲高清一区二区三区| 国产一级精品在线| 国产亚洲污的网站| 久久99精品久久只有精品| 欧美一区二区三区小说| 欧美午夜电影网| 欧美日韩午夜在线| 亚洲高清免费一级二级三级| 97se亚洲国产综合在线| www.久久精品| 91香蕉视频污| 国产成人免费视频一区| 日韩欧美国产wwwww| 国产福利电影一区二区三区| 久久99精品久久久久久动态图| 亚洲国产精品t66y| 国产日韩亚洲欧美综合| 欧美性xxxxx极品少妇| www..com久久爱| 欧美丰满少妇xxxbbb| 欧美成人性福生活免费看| 2023国产一二三区日本精品2022| 欧美电视剧免费观看| 韩国女主播成人在线观看| 国产精品欧美一区喷水| 国产成人免费在线视频| 秋霞午夜鲁丝一区二区老狼| 日本少妇一区二区| 国产成人av电影在线观看|