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

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

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

    posts - 431,  comments - 344,  trackbacks - 0
    下面先看一下代碼:

    package com.eric.news;

    public class TestWrapper2 {

     public void doSomething(double num) {
      System.out.println("deal double");
     }
     public void doSomething(Integer num) {
      System.out.println("deal integer");
     }
     public static void main(String[] args) {
      int i = 2;
      TestWrapper2 t = new TestWrapper2();
      t.doSomething(i);
     }

    }

    哪一個method會被調用?在Tiger之前的環境中,這個很容易判斷的,int會被擴展成double并調用doSomething(double num)。然而,在Tiger的環境中,看起來好像會發生boxing,所以解析后被調用的會是doSomething(Integer num),但實際上并不是這樣的。
    在Tiger中,因為有些的限制,所以method的解析是三個pass的過程:
    1. 編譯器會試著不用任何的boxing,unboxing,或者啟用vararg來定位正確的method。這會找到根據Java 1.4的規則而會調用的任何method。
    2. 如果第一個pass失敗了,編譯器會再度嘗試解析method,但這次會容許boxing與unboxing轉換。具有vararg的方法不在這次pass考慮范圍內。
    3. 如果第二個pass也失敗了,編譯器會做最后一次的嘗試,容許boxing與unboxing,且同時也考慮到vararg method。
    這樣的規則可以確保維持與Tiger之前的環境的一致性。

    所有結果是:
    deal double

    但如果修改代碼為:

    package com.eric.news;

    public class TestWrapper2 {

     public void doSomething(Double num) {
      System.out.println("deal double");
     }
     public void doSomething(Integer num) {
      System.out.println("deal integer");
     }
     public static void main(String[] args) {
      int i = 2;
      TestWrapper2 t = new TestWrapper2();
      t.doSomething(i);
     }

    }


    而這里就第一個pass就會失敗,而后繼續執行第二個pass,所有結果為:
    deal integer

    posted on 2008-04-23 15:17 周銳 閱讀(319) 評論(0)  編輯  收藏 所屬分類: Java
    主站蜘蛛池模板: 特黄特色大片免费| 亚洲一区中文字幕久久| 亚洲av永久无码精品网址| 无码国产精品一区二区免费I6| 久久精品国产亚洲AV麻豆~| a毛片全部免费播放| 亚洲AV综合色区无码一区爱AV| 天堂在线免费观看| 亚洲国产精品久久久久久| 亚欧免费无码aⅴ在线观看| 亚洲国产精品国自产拍电影| 麻花传媒剧在线mv免费观看| 亚洲精品人成网线在线播放va| 成人免费的性色视频| 亚洲一区二区三区国产精华液| 欧洲精品免费一区二区三区| 处破女第一次亚洲18分钟| 亚洲第一区精品观看| 亚洲免费观看视频| 亚洲一区二区三区首页| 九九精品免费视频| 精品亚洲视频在线| 亚洲乱码一区二区三区在线观看| 久久一本岛在免费线观看2020| 亚洲国产成人久久99精品| 日本无吗免费一二区| 一级毛片在线播放免费| 亚洲视频在线观看| 免费无码一区二区三区蜜桃大| 有码人妻在线免费看片| 亚洲欧洲国产日韩精品| 久久久久久免费视频| 深夜a级毛片免费视频| 亚洲AV第一页国产精品| 毛片基地免费视频a| j8又粗又长又硬又爽免费视频| 亚洲视频一区二区三区| 免费一级毛片不卡在线播放| 四虎影视在线影院在线观看免费视频| 亚洲日本va在线观看| 伊人久久亚洲综合|