<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 40, 文章 - 0, 評論 - 20, 引用 - 0
    數據加載中……

    關于Java中方法重載的問題

    Java中支持方法名相同,但是方法參數不同而自動去選擇執行哪一個方法,如print(int i)和print(String str),雖然方法名相同,但是參數不同。象這里的int和String 參數差異比較大所以看起來這種重載沒什么差別,但是如果是類型差別不大, 會出現什么情況呢?

       看下面的代碼:

        public void f(float i){
            System.out.println("float");
        }

        public viod f(double i){
           System.out.println("double");
       }

        那么執行 f(5)會輸出什么呢?5是被認為是float類型還是double類型還是會報錯呢?執行結果是 float 。原來在這種情況下,該數據類型能被轉為一個較大的數據類型,比5較大的數據類型是float,其次才到double,所以輸出結果是float。還有一個特殊的情況就是如果輸入類型為char,如這里我們執行f('a'),

    不要以為這會出錯,其實是不會出錯的,因為如果沒有發現一個準確的char于它匹配,那么它就把這個char轉換成int類型,如果沒有int類型和它匹配,在去尋找較大的數據類型,這里它找到了float,所以這里執行flaot('a')輸出的還是 float。

      下面再討論另外一種情況,譬如說下面這種情況:

       定義了下面一個方法:

      public void f(int i){
        System.out.println("int ");
    }

      如果執行f(100.99)會不會在這種數據類型大于這種重載方法期待的變量時會怎么處理呢?會不會把這種較大的數據類型縮小到期待的數據類型?編譯一下,很遺憾出錯了,在這種情況下是出錯的。

    這么快就12點半了,睡覺了~~~不然明天早晨爬不起來了。

    posted on 2005-06-10 00:20 月亮 閱讀(366) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 野花香高清视频在线观看免费 | 国产亚洲一区二区手机在线观看 | 国产免费卡一卡三卡乱码| 亚洲人精品亚洲人成在线| 免费v片在线观看视频网站| 亚洲视频网站在线观看| 99ee6热久久免费精品6| 老司机亚洲精品影院| 97av免费视频| 亚洲国产亚洲综合在线尤物| 一二三四视频在线观看中文版免费 | 色视频在线观看免费| 四虎免费久久影院| 免费无码午夜福利片69| 国产精品亚洲产品一区二区三区| 精品国产呦系列在线观看免费 | 免费精品久久久久久中文字幕 | 国产成人AV片无码免费| 亚洲毛片免费观看| 好吊妞788免费视频播放| 国产亚洲精品2021自在线| 亚洲不卡AV影片在线播放| 久久久久久久久久免免费精品 | 精品日韩亚洲AV无码一区二区三区 | 国产成人精品免费视频大全五级| 特级毛片全部免费播放| 久久亚洲国产午夜精品理论片| 日韩精品极品视频在线观看免费| 国产成+人+综合+亚洲专| 亚洲?v无码国产在丝袜线观看| 国产麻豆成人传媒免费观看| 亚洲国产成人精品无码区在线网站| 最近2019中文字幕mv免费看| 一级做性色a爰片久久毛片免费| 亚洲综合国产精品| 国产成人免费网站在线观看| 久久成人无码国产免费播放| 亚洲色大情网站www| 国产亚洲人成无码网在线观看| 野花高清在线观看免费完整版中文| 一区二区三区免费看|