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

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

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

    Junky's IT Notebook

    統計

    留言簿(8)

    積分與排名

    WebSphere Studio

    閱讀排行榜

    評論排行榜

    使用Java中的final變量需要注意的地方

    對與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.


    對與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:\>

    您認為本文應該得????????共有8人參與打分

    posted on 2007-03-16 13:39 junky 閱讀(315) 評論(0)  編輯  收藏 所屬分類: java

    主站蜘蛛池模板: 成人a免费α片在线视频网站| 成人影片一区免费观看| 一个人看的www在线观看免费| 亚洲专区在线视频| 久久99热精品免费观看动漫| 久久精品国产亚洲av四虎| a成人毛片免费观看| 亚洲成AV人片在线播放无码| 久久国产乱子免费精品| 婷婷亚洲久悠悠色悠在线播放 | 免费久久精品国产片香蕉| 亚洲AV综合永久无码精品天堂| 日本高清色本免费现在观看| 18禁亚洲深夜福利人口| 亚洲第一区在线观看| 国产va免费观看| 久久久久亚洲av无码专区蜜芽| 男人进去女人爽免费视频国产| 亚洲丁香色婷婷综合欲色啪| 免费人成在线观看69式小视频| 亚洲国产精品无码久久98| 免费a级毛片无码av| 国色精品va在线观看免费视频| 久久亚洲精品无码aⅴ大香 | 特级一级毛片免费看| 夜夜春亚洲嫩草影院| 91av在线免费视频| 亚洲色精品三区二区一区| 亚洲国产一成久久精品国产成人综合| 中文精品人人永久免费| 亚洲精品自拍视频| 国产免费怕怕免费视频观看| aa在线免费观看| 中文文字幕文字幕亚洲色| 亚洲成av人在片观看| 69视频在线是免费观看| 美女视频黄频a免费| 亚洲综合在线观看视频| 在线观看免费亚洲| 日本免费在线中文字幕| 亚洲av无码专区首页|