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

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

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

    posts - 89,  comments - 98,  trackbacks - 0

    對與java中的final變量,java編譯器是進行了優化的。每個使用了final類型變量的地方都不會通過連接而進行訪問。比如說Test類中使用了Data類中一個final的int數字fNumber=77,這時候,java編譯器會將77這個常數編譯到Test類的指令碼或者常量池中。這樣,每次Test類用到fNumber的時候,不會通過引用連接到Data類中進行讀取,而是直接使用自己保存在類文件中的副本。


    對與java中的final變量,java編譯器是進行了優化的。每個使用了final類型變量的地方都不會通過連接而進行訪問。比如說Test類中使用了Data類中一個final的int數字fNumber=77,這時候,java編譯器會將77這個常數編譯到Test類的指令碼或者常量池中。這樣,每次Test類用到fNumber的時候,不會通過引用連接到Data類中進行讀取,而是直接使用自己保存在類文件中的副本。
    用程序說話:
    Test.java:

    public class Test{
    ?public static void main(String[] args){
    ??System.out.println(Data.fNumber);
    ?}
    }


    Data.java:

    public class Data{
    ?public static final int fNumber=77;?
    }

    執行命令和結果:

    Microsoft Windows XP [版本 5.1.2600]
    (C) 版權所有 1985-2001 Microsoft Corp.

    C:\Documents and Settings\zangmeng>cd ..

    C:\Documents and Settings>cd ..

    C:\>javac Test.java

    C:\>java Test
    77

    C:\>


    這時候,我們更改Data.java的內容:
    public class Data{
    ?public static final int fNumber=777;?
    }

    然后執行如下命令:

    C:\>javac Data.java

    C:\>java Test
    77

    C:\>

    這里我們看到,雖然Data.java中的fNumber已經更改為777,而且已經重新編譯了,但是因為編譯器把fNumber的副本保存Test類中,所以在重新編譯Test類的前,Test類一直把fNumber認為是77而不是777。下面我們變異Test.java,再執行,看看結果。

    C:\>javac Test.java

    C:\>java Test
    777

    C:\>
    這時候,我們看到,重新編譯的Test類將新的777數值封裝到了自己類中。

    整個過程如下:
    Microsoft Windows XP [版本 5.1.2600]
    (C) 版權所有 1985-2001 Microsoft Corp.

    C:\Documents and Settings\zangmeng>cd ..

    C:\Documents and Settings>cd ..

    C:\>javac Test.java

    C:\>java Test
    77
    //在這里改變了Data.java的內容
    C:\>javac Data.java

    C:\>java Test
    77

    C:\>javac Test.java

    C:\>java Test
    777

    C:\>

    posted on 2006-07-28 09:36 水煮三國 閱讀(291) 評論(1)  編輯  收藏 所屬分類: J2SE

    FeedBack:
    # re: 轉:使用Java中的final變量需要注意的地方
    2006-07-28 09:38 | 水煮三國
    這里要注意的一點:就是前提是test在未編譯前  回復  更多評論
      
    <2006年7月>
    2526272829301
    2345678
    9101112131415
    16171819202122
    23242526272829
    303112345

    常用鏈接

    留言簿(4)

    隨筆分類(85)

    隨筆檔案(89)

    文章分類(14)

    文章檔案(42)

    收藏夾(37)

    java

    oracle

    Sybase

    搜索

    •  

    積分與排名

    • 積分 - 211659
    • 排名 - 266

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 看免费毛片天天看| 亚洲日韩中文在线精品第一| 亚洲综合婷婷久久| 四虎国产精品免费永久在线| 中文字幕第一页亚洲| 人禽伦免费交视频播放| 亚洲国产精品成人网址天堂| 一区二区三区免费精品视频 | 性短视频在线观看免费不卡流畅| 亚洲国产精品va在线播放| 日本高清不卡aⅴ免费网站| 亚洲av永久无码精品秋霞电影影院 | 无码人妻久久一区二区三区免费| 国产亚洲综合成人91精品| 国产精成人品日日拍夜夜免费| 久久精品国产亚洲沈樵| 久久午夜伦鲁片免费无码| 亚洲国产日韩在线成人蜜芽 | 免费无码AV一区二区| 国产精品亚洲二区在线观看| a级毛片免费全部播放无码| 亚洲va无码专区国产乱码| 1000部拍拍拍18勿入免费视频软件| 亚洲成aⅴ人片在线观| 午夜免费福利在线| 日韩免费码中文在线观看| 亚洲成色在线综合网站| 永久免费av无码不卡在线观看| 亚洲精品国产suv一区88| 亚洲人妻av伦理| 99久在线国内在线播放免费观看| 亚洲成a人片在线看| 日韩亚洲精品福利| 无人在线观看免费高清| 色天使色婷婷在线影院亚洲| 亚洲色成人网站WWW永久| 国产免费av片在线看| 精品久久久久久无码免费| 亚洲成人福利在线观看| 亚洲精品国产自在久久 | 在线免费观看一级片|