• <em id="6vhwh"><rt id="6vhwh"></rt></em>

    <style id="6vhwh"></style>

    <style id="6vhwh"></style>
    1. <style id="6vhwh"></style>
        <sub id="6vhwh"><p id="6vhwh"></p></sub>
        <p id="6vhwh"></p>
          1. 国产亚洲欧洲av综合一区二区三区 ,色爱综合另类图片av,亚洲av免费成人在线,久久热在线视频精品视频,成在人线av无码免费,国产精品一区二区久久毛片,亚洲精品成人片在线观看精品字幕 ,久久亚洲精品成人av秋霞

             首頁 > 試題

            重載函數(shù)的特性-總結(jié)

            更新時間:2025-12-12 22:47:33 閱讀: 評論:0

            2023年12月11日發(fā)(作者:教育招生考試院)

            重載函數(shù)的特性-總結(jié)

            重載函數(shù)的一些總結(jié)

            直接show code + 個人總結(jié)

            ①重載函數(shù)可以區(qū)分拆裝箱

            重載方法的調(diào)用過程中,入?yún)?shù)據(jù)如果有基本類型不再裝拆箱,因為重載可以區(qū)分入?yún)ο笫腔绢愋瓦€是對象類型,下例可以體現(xiàn)出來:

            package test;

            public class Override {

            public static void f(int a){

            n("int");

            }

            public static void f(Integer a){

            n("Integer");

            }

            public static void main(String[] args) {

            int intA = 10;

            Integer integerA = 10;

            f(intA);

            f(integerA);

            }

            }

            //輸出:

            //int

            //Integer

            ②重載函數(shù)入?yún)⒍加蠴bject…對象時,就無法通過入?yún)⒉鹧b箱來選擇哪一個重載函數(shù)

            public class Override {

            public static void f(int a, bjects){

            n("int");

            }

            public static void f(Integer a, bjects){

            n("Integer");

            }

            public static void main(String[] args) {

            int intA = 10;

            Integer integerA = 10;

            f(intA);

            //The method f(int, Object[]) is ambiguous for the type Override

            f(integerA);

            //The method f(int, Object[]) is ambiguous for the type Override

            }

            }

            上面的這個例子,調(diào)用重載函數(shù)的時候都會報錯。如果重載函數(shù)沒有Object…那么可以通過區(qū)分入?yún)ο笫欠癫鹧b箱來實現(xiàn)重載,但是入?yún)?/p>

            如果有Object…則無法通過入?yún)ο笫欠癫鹧b箱來區(qū)分了。

            具體原因應(yīng)該是涉及到JVM的原理了。

            ③重載函數(shù)面對兩個方法都符合的入?yún)ⅲ瑫?yōu)先選擇更準(zhǔn)確的方法。

            public class Override {

            public static void f(int a){

            n("int");

            }

            public static void f(Integer a, bjects){

            n("Integer");

            }

            public static void main(String[] args) {

            int intA = 10;

            Integer integerA = 10;

            f(intA);

            f(integerA);

            }

            }

            //輸出:

            //int

            //int

            同樣的,如果重載函數(shù)改為f(int a, Object…objects)和f(Integer a),那么最后的輸出結(jié)果為Integer Integer。

            雖然理論上兩個重載函數(shù)的入?yún)⒍挤蟜(intA)和f(integerA)但是JVM卻選擇了沒有Object…的重載函數(shù)。建立在都符合入?yún)⒌那闆r下JVM

            會去選擇更準(zhǔn)確的重載方法。

            這里還可以得出函數(shù)重載時考慮的優(yōu)先級:不定長度>拆裝箱

            ④重載函數(shù)無法將基本數(shù)據(jù)類型和Object…區(qū)分開

            入?yún)ο笥袑ο?裝箱)型Integer,如上述總結(jié)③得出的,優(yōu)先使用有Integer的重載函數(shù)

            public class Override {

            public static void bjects) {

            n("");

            }

            public static void fff(Integer b, bjects) {

            n("");

            }

            public static void main(String[] args) {

            fff(10);

            }

            }

            //

            如果入?yún)ο笥袀€基本數(shù)據(jù)類型int/double/long/float/char….,則會報錯

            public class Override {

            public static void bjects) {

            n("");

            }

            public static void fff(int b, bjects) {

            n("");

            }

            public static void main(String[] args) {

            fff(10);

            //The method fff(Object[]) is ambiguous for the type Override

            }

            }

            目前總結(jié)出來四點①重載函數(shù)可以區(qū)分拆裝箱

            ②重載函數(shù)入?yún)⒍加蠴bject…對象時,就無法通過入?yún)⒉鹧b箱來選擇哪一個重載函數(shù)。

            ③重載函數(shù)面對兩個方法都符合的入?yún)ⅲ瑫?yōu)先選擇更準(zhǔn)確的方法。

            ④重載函數(shù)無法將基本數(shù)據(jù)類型和Object…區(qū)分開

            可以根據(jù) 實例+總結(jié) 再思考一下,這些特征的共同點,我們知道重載的使用主要是為了提升函數(shù)的復(fù)用,準(zhǔn)確的說是函數(shù)名,他是針對

            【函數(shù)名+不同的入?yún)ⅰ縼韰^(qū)分該調(diào)用哪個方法。上述總結(jié)除了①,都是因為入?yún)⒓尤肓薕bject…才出現(xiàn)的現(xiàn)象,這些特性還是在實踐中所

            得。思考其面對Object…入?yún)⑻幚淼奶匦裕瑧?yīng)該涉及到JVM函數(shù)載入過程中的選擇,也可能是在項目編譯的過程中的一些特性。還需要繼

            續(xù)去探索。

            總之最后一句,不建議在重載函數(shù)中使用Object…,除非徹底摸清楚重載函數(shù)調(diào)用過程針對Object…入?yún)⒌奶幚矸绞健?/p>

            本文發(fā)布于:2023-12-11 08:28:36,感謝您對本站的認(rèn)可!

            本文鏈接:http://www.newhan.cn/zhishi/a/88/40948.html

            版權(quán)聲明:本站內(nèi)容均來自互聯(lián)網(wǎng),僅供演示用,請勿用于商業(yè)和其他非法用途。如果侵犯了您的權(quán)益請與我們聯(lián)系,我們將在24小時內(nèi)刪除。

            本文word下載地址:重載函數(shù)的特性-總結(jié).doc

            本文 PDF 下載地址:重載函數(shù)的特性-總結(jié).pdf

            標(biāo)簽:重載   函數(shù)   特性   總結(jié)   裝箱   對象   方法
            留言與評論(共有 0 條評論)
               
            驗證碼:
            推薦文章
            排行榜
            Copyright ?2019-2022 Comsenz Inc.Powered by ? 實用文體寫作網(wǎng)旗下知識大全大全欄目是一個全百科類寶庫! 優(yōu)秀范文|法律文書|專利查詢|
            主站蜘蛛池模板: 日韩激情成人| 四虎成人精品国产永久免费| 激情文学一区二区国产区| 国产精品欧美一区二区三区不卡| 中文字幕无码免费不卡视频| 偷自拍另类亚洲清纯唯美| 五月天免费中文字幕av| 中国熟妇毛多多裸交视频| 别揉我奶头~嗯~啊~的视频| 无码人妻丰满熟妇区丶| 精品亚洲一区二区三区四区| 人妻少妇偷人精品一区| 欧美成年性h版影视中文字幕 | 亚洲欧美日韩国产成人| 在线亚洲欧美日韩精品专区 | 久久人人97超碰国产精品| 免费无码又爽又刺激激情视频| 久久久久亚洲AV无码尤物| 欧美在线一区二区三区精品| 五月婷婷综合色| 中文字幕精品1在线| 亚洲人成人网站色www| 欧美性开放免费网站| 亚洲中少妇久久中文字幕| 国产熟妇另类久久久久久| 大香j蕉75久久精品免费8| 六十路老熟妇乱子伦视频| 我的漂亮老师2中文字幕版| 国产情侣激情在线对白| 国产va精品免费观看| 吉川爱美一区二区三区视频| 国产黄色带三级在线观看| 国产国产成人精品久久蜜| 美乳丰满人妻无码视频| 成年午夜无码av片在线观看| 亚洲一二三区精品美妇| 又粗又爽高潮午夜免费视频| 99热成人精品热久久66| 日韩亚洲欧美中文高清在线| 韩国美女福利视频在线观看 | 国产成人精品性色av麻豆|