<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
    值傳遞是在一個函數(shù)中,調(diào)用另外一個函數(shù),其中含有參數(shù)傳遞的情況。往往值傳遞就是把數(shù)據(jù)傳遞到另外一個函數(shù)中進行進一步處理,以更清楚地顯示函數(shù)的表達意思。在函數(shù)調(diào)用的時候會有數(shù)據(jù)傳遞,同樣要考慮形參和實參的問題,如下面的一個程序:
    <a target="_blank"><img src="/upimg/2006-05-07/142825_09_534.gif" width="468" height="60" border="0" /></a>

    public class PassTest

    {

    ??? float ptValue;

    ??? ?public void changeInt (int value)

    ??? {

    ?????????? value = 55;

    ??? }

    ??? ?public void changeStr (String value)

    ??? {

    ?????????? value = new String ("different");

    ??? }

    ??? public void changeObjValue (PassTest ref)

    ??? {

    ?????????? ref.ptValue = 99f;

    ??? }

    ??? public static void main (String args[])

    ??? {

    ?????????? String str;

    ?????????? intval;

    ?????????? PassTest pt = new PassTest ();

    ?????????? val = 11;

    ?????????? pt.changeInt (val);

    ?????????? System.out.println ("Int value is: " + val);

    ?????????? str = new String ("Hello");

    ?????????? pt.changeStr (str);

    ?????????? System.out.println ("Str value is: " + str);

    ?????????? pt.ptValue = 101f;

    ?????????? pt.changeObjValue (pt);

    ?????????? System.out.println ("Current ptValue is: " + pt.ptValue);

    ??? ?}

    }

      這個程序最后輸出的結(jié)果將是:

      11

      Hello

      99f

      開始的11和Hello就是遵循參數(shù)傳遞的原則,雖然改變了形參的值,但是實參卻不改變,這同C語言中是一樣的。那么如果想改變函數(shù)中的實參的值,那么應(yīng)該怎么做呢?我們知道,在C語言中,我們可以采用指針變量,用指針變量作為函數(shù)的參數(shù),那么這樣,傳遞的就是參數(shù)存放的地址,那么在函數(shù)中改變同一地址的參數(shù)值的時候,就不會發(fā)生錯誤,可是,在java中沒有指針的說法,那么,要實現(xiàn)上述C語言的做法,應(yīng)該怎么處理呢?我們知道,java中處處都是考慮對象的,句柄是用來操作對象的活動的,那么我們?nèi)绻麑ο蟮木浔鷤鬟f到函數(shù)中去,就可以使兩者指向同一個句柄(也就是地址),這樣就可以完成數(shù)據(jù)的修改了。見上面的程序,我們可以知道,pt是主函數(shù)中創(chuàng)建的PassTest的對象,通過傳遞它,就可以完成地址的傳遞,子函數(shù)中,ref與主函數(shù)的pt指向的其實是一個內(nèi)存單元,那么修改ref中的ptValue的值,也就是修改pt中的ptValue的值,即使沒有最后的數(shù)據(jù)返回,這個數(shù)據(jù)也是會改變的。

    posted on 2006-07-21 15:54 水煮三國 閱讀(306) 評論(1)  編輯  收藏 所屬分類: J2EE

    FeedBack:
    # re: JAVA當中的值傳遞
    2006-07-21 15:56 | 水煮三國
    java當中的值傳遞不會改變本函數(shù)聲明的參數(shù)值,而在被調(diào)用函數(shù)當中參數(shù)的改變不會影響到本函數(shù)的參數(shù)值。

    而被調(diào)用函數(shù)當中的是一個本函數(shù)參數(shù)值聲明的值的一個考貝。  回復(fù)  更多評論
      

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


    網(wǎng)站導(dǎo)航:
     
    <2006年7月>
    2526272829301
    2345678
    9101112131415
    16171819202122
    23242526272829
    303112345

    常用鏈接

    留言簿(4)

    隨筆分類(85)

    隨筆檔案(89)

    文章分類(14)

    文章檔案(42)

    收藏夾(37)

    java

    oracle

    Sybase

    搜索

    •  

    積分與排名

    • 積分 - 210828
    • 排名 - 266

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 久久丫精品国产亚洲av不卡| 蜜芽亚洲av无码一区二区三区| 99久久这里只精品国产免费| 亚洲一线产品二线产品| 波多野结衣视频在线免费观看| 中文在线免费观看| 亚洲天堂免费在线| 黑人大战亚洲人精品一区| 国产又大又粗又长免费视频| 日韩在线一区二区三区免费视频| 亚洲国产精品线在线观看| 免费鲁丝片一级观看| 少妇性饥渴无码A区免费| 亚洲人成网站色7799| 亚洲va久久久噜噜噜久久| 日本黄页网站免费| 久久精品毛片免费观看| 欧洲乱码伦视频免费国产| 亚洲午夜电影在线观看高清| 综合久久久久久中文字幕亚洲国产国产综合一区首 | 美女黄色免费网站| 亚洲国产电影在线观看| 亚洲第一AAAAA片| 亚洲欧洲自拍拍偷精品 美利坚 | 亚洲精品乱码久久久久久自慰| 可以免费看黄的网站| 久久免费观看国产精品88av| 粉色视频在线观看www免费| 亚洲一区中文字幕在线观看| 国产亚洲精品无码成人| 亚洲VA综合VA国产产VA中| 无人在线观看免费高清视频| 久久午夜伦鲁片免费无码| 久久久久久国产a免费观看不卡| 亚洲国产欧美一区二区三区| 亚洲国产精品无码久久久| 亚洲成色在线影院| 亚洲无人区一区二区三区| 凹凸精品视频分类国产品免费| 毛片免费在线播放| 91黑丝国产线观看免费|