国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

Java的pass by Value(傳值)

瀏覽:96日期:2024-06-13 17:43:27
內容: Java中使用“pass by value'函數調用 方式,這常常造成許多人迷惑。在所有地點,Java都使用嚴格采用pass by value,所以下列程序: class Param { public static void main (String [] args){ int x = 3; triple(x); System.out.println('x after triple : '+ x); } private static void triple (int arg) { arg = arg * 3; System.out.println('arg in triple :'+ arg); }}會產生這樣的輸出:arg in triple : 15x after triple : 5這段代碼不致于讓人糊涂。但如果參數中傳遞的是對象,可能把人弄迷糊了。如果在程序中以Date對象表示日期,那么下列程序:class Param { public static void main (String [] args){ Date d1 = new Date('1 Apr 98'); nextDateUpdate(d1); System.out.println('d1 after nextDay: ' + d1);Date d2 = new Date('1 Apr 98'); nextDateReplace(d2); System.out.println('d2 after nextDay: ' + d2); } private static void nextDateUpdate (Date arg) { arg.setDate( arg.getDate() + 1); System.out.println('arg in nextDay : ' + arg); } private static void nextDateReplace (Date arg) { arg = new Date(arg.getYear(),arg.getMonth(),arg.getDate()+1); System.out.println('arg in nextDay : ' + arg); }}產生的輸出:arg in nextDay : Thu Apr 02 00:00:00 CST 1998d1 after nextDay: Thu Apr 02 00:00:00 CST 1998arg in nextDay : Thu Apr 02 00:00:00 CST 1998d2 after nextDay: Wed Apr 01 00:00:00 CST 1998從本質上說,object reference 是按值傳遞的(pass by value)。因此可以修改參數對象的內部狀態,但參數對象重新賦值,沒有意義。 Java, java, J2SE, j2se, J2EE, j2ee, J2ME, j2me, ejb, ejb3, JBOSS, jboss, spring, hibernate, jdo, struts, webwork, ajax, AJAX, mysql, MySQL, Oracle, Weblogic, Websphere, scjp, scjd Java中使用“pass by value'函數調用 方式,這常常造成許多人迷惑。在所有地點,Java都使用嚴格采用pass by value,所以下列程序: class Param {public static void main (Strin
標簽: Java
相關文章:
主站蜘蛛池模板: 华阴市| 那曲县| 淮南市| 兴隆县| 成安县| 富民县| 通化县| 庆云县| 米林县| 吉林省| 宝清县| 达拉特旗| 莒南县| 博白县| 革吉县| 光泽县| 乌海市| 永川市| 文登市| 加查县| 新巴尔虎左旗| 山丹县| 洞头县| 鹰潭市| 鄂托克旗| 荥阳市| 浙江省| 黑龙江省| 聊城市| 莲花县| 桑日县| 沛县| 尼木县| 犍为县| 嘉荫县| 临颍县| 永福县| 夏河县| 尖扎县| 申扎县| 应城市|