锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲精品无播放器在线播放,国产精品大陆在线观看,色综合色综合网色综合http://www.aygfsteel.com/nicholas-sjy/category/5978.html鑰佷簡娌℃湁鍥炲繂涓嶈绱э紝瑕佹槸鍙湁涓澶у爢鍚庢倲灝辨儴浜?/description>zh-cnTue, 27 Feb 2007 21:27:31 GMTTue, 27 Feb 2007 21:27:31 GMT60Pass by What ?http://www.aygfsteel.com/nicholas-sjy/articles/40853.htmlNic Sense ZoneNic Sense ZoneThu, 13 Apr 2006 04:07:00 GMThttp://www.aygfsteel.com/nicholas-sjy/articles/40853.htmlhttp://www.aygfsteel.com/nicholas-sjy/comments/40853.htmlhttp://www.aygfsteel.com/nicholas-sjy/articles/40853.html#Feedback1http://www.aygfsteel.com/nicholas-sjy/comments/commentRss/40853.htmlhttp://www.aygfsteel.com/nicholas-sjy/services/trackbacks/40853.html 聽聽聽鍦?/span> Java 涓肩被鍨嬪拰寮曠敤綾誨瀷鏄浣曡繘琛屼紶閫掔殑錛岃繖涓槸鎴戜粖澶╄璋堣璇濋銆?/span>

聽聽聽聽聽聽 鍏充簬榪欎釜璇濋錛屾垜鐨勪竴涓ソ鍙嬬殑鎺ㄨ崘涓嬬湅浜嗕竴綃囨枃绔狅紝榪欐墠浣挎垜鏈変簡鍐欒繖綃囨枃绔犵殑鎯蟲硶銆傝繖綃囨枃绔犳槸銆?/span> Pass-by-Value Please 銆?/span> (http://www.javaranch.com/campfire/StoryPassBy.jsp) 錛岄『渚垮啀鍚戝ぇ瀹舵帹鑽愪竴涓綉绔欙紝灝辨槸 http://www.javaranch.com 錛屼竴涓緢濂界殑 Java 涔愬洯銆?/span>

聽聽聽聽聽聽 濂戒簡錛屽洖鍒版棰樺惂锝炲厤寰椾竴涓嬪張璺戣繙浜嗭綖鍛靛懙路

聽聽聽聽聽聽 鍏充簬鍊肩被鍨嬶紝鎴戞兂澶у閮藉緢娓呮浜嗭紝鎬葷殑璇存潵灝辨槸 Copy the value and give it to you 銆?/span>

聽聽聽聽聽聽 璇風湅濡備笅浠g爜錛?br />

聽1package聽blog.nichlas.article.j2se;
聽2
聽3importstatic聽java.lang.System.out;
聽4
聽5publicclass聽PassByValue聽{
聽6聽聽聽聽publicstaticvoid聽testPassValue(){
聽7聽聽聽聽聽聽聽聽int聽a聽=2聽;
聽8聽聽聽聽聽聽聽聽int聽b聽=聽a聽;
聽9聽聽聽聽聽聽聽聽out.println("a=聽"+聽a聽)聽;
10聽聽聽聽聽聽聽聽out.println("b=聽"+聽b聽)聽;
11聽聽聽聽聽聽聽聽out.println("===============聽the聽value聽has聽changed聽===============");
12聽聽聽聽聽聽聽聽a聽=3聽;聽聽//聽has聽change聽the聽value聽of聽a,聽but聽tht聽value聽of聽b聽is聽never聽be聽changed
13聽聽聽聽聽聽聽聽out.println("a=聽"+聽a聽)聽;
14聽聽聽聽聽聽聽聽out.println("b=聽"+聽b聽)聽;
15聽聽聽聽}
16聽聽聽聽
17聽聽聽聽publicstaticvoid聽main(String聽[]聽args){
18聽聽聽聽聽聽聽聽out.println();
19聽聽聽聽聽聽聽聽PassByValue.testPassValue();
20聽聽聽聽}
21}

緇撴灉濡備笅錛?/span>

a= 2

b= 2

=============== the value has changed ===============

a= 3

b= 2

榪欎釜渚嬪瓙寰堟槑鏄撅紝涓嶇敤榪囧鐨勮В閲婏紝 a 鍜?/span> b 宸茬粡鏄袱涓嫭绔嬬殑錛屼簰琛ョ浉騫茬殑鍊箋?/span>

涓嬮潰榪涘叆鎴戜滑浠婂ぉ鐨勯噸鐐癸紝鍏充簬寮曠敤綾誨瀷銆?/span>

鎴戣繖閲屾兂鍊熼壌涓涓嬫垜寮綃囨彁鍒扮殑閭g瘒鏂囩珷錛岄噷闈㈡彁鍒扮殑鏉瓙錛?/span> I like the cap, do you?

鍦ㄨ繖閲岋紝鎴戞兂鎵撲竴涓瘮鏂癸紝鎶婃垜浠澂瀛愰噷鐨勫紩鐢?/span> Reference 浣滀竴涓被浼鹼紝鍦ㄦ搷浣滅郴緇熼噷錛屾湁涓涓緢閲嶈鐨勬蹇碉紝閭e氨鏄?b style="mso-bidi-font-weight: normal">榪涚▼鎺у埗鍧?/span>錛屼粬鏄繘紼嬪疄浣撶殑涓閮ㄥ垎錛屾槸鎿嶄綔緋葷粺涓渶閲嶈鐨勮褰曞瀷鏁版嵁緇撴瀯錛屼粬璁板綍浜嗘搷浣滅郴緇熸墍闇鐨勶紝鐢ㄤ簬鎻忚堪榪涚▼鐨勫綋鍓嶆儏鍐典互鍙婃帶鍒惰繘紼嬭繍琛岀殑鍏ㄩ儴淇℃伅銆傚悓鏍鳳紝寮曠敤涔熸槸濡傛錛屽彧鏄病鏈夎繖涔堝鏉傜艦浜嗐傚紩鐢ㄩ噷瀛樻斁浜?/span> java object 鐨勭浉鍏充俊鎭紝浠ヤ究璁?/span> JVM (Java Virtual Machine) 鍦ㄥ爢涓壘鍒板璞?/span> (Java 瀵硅薄鍏ㄩ儴鍦ㄥ爢涓?/span> ) 銆?/span>

鎴戜滑鍙互鎶婅繖縐嶆儏鍐墊兂璞℃垚鍦ㄤ竴涓澂瀛愰噷鏀句簡涓涓被浼間簬榪涚▼鎺у埗鍧楃殑 reference 錛屼笅闈㈡潵鐪嬪涓嬩唬鐮侊細

聽1package聽blog.nichlas.article.j2se;
聽2
聽3importstatic聽java.lang.System.out;
聽4
聽5publicclass聽PassByValue聽{
聽6聽聽聽聽publicstaticvoid聽testPassValue(){
聽7聽聽聽聽聽聽聽聽int聽a聽=2聽;
聽8聽聽聽聽聽聽聽聽int聽b聽=聽a聽;
聽9聽聽聽聽聽聽聽聽out.println("a=聽"+聽a聽)聽;
10聽聽聽聽聽聽聽聽out.println("b=聽"+聽b聽)聽;
11聽聽聽聽聽聽聽聽out.println("===============聽the聽value聽has聽changed聽===============");
12聽聽聽聽聽聽聽聽a聽=3聽;聽聽//聽has聽change聽the聽value聽of聽a,聽but聽tht聽value聽of聽b聽is聽never聽be聽changed
13聽聽聽聽聽聽聽聽out.println("a=聽"+聽a聽)聽;
14聽聽聽聽聽聽聽聽out.println("b=聽"+聽b聽)聽;
15聽聽聽聽}
16聽聽聽聽
17聽聽聽聽publicstaticvoid聽testPassReference(){
18聽聽聽聽聽聽聽聽ObjectForTest聽o1聽=new聽ObjectForTest("Object聽one");
19聽聽聽聽聽聽聽聽ObjectForTest聽o2聽=聽o1;
20聽聽聽聽聽聽聽聽out.println(o1.getInfo());
21聽聽聽聽聽聽聽聽out.println(o2.getInfo());
22聽聽聽聽聽聽聽聽out.println("===============聽the聽value聽has聽changed聽===============");
23聽聽聽聽聽聽聽聽o1聽=new聽ObjectForTest("Object聽two");
24聽聽聽聽聽聽聽聽out.println(o1.getInfo());
25聽聽聽聽聽聽聽聽out.println(o2.getInfo());
26聽聽聽聽}
27聽聽聽聽
28聽聽聽聽publicstaticvoid聽main(String聽[]聽args){
29聽聽聽聽聽聽聽聽out.println();
30聽聽聽聽聽聽聽聽PassByValue.testPassValue();
31聽聽聽聽聽聽聽聽out.println();
32聽聽聽聽聽聽聽聽PassByValue.testPassReference();
33聽聽聽聽}
34}
35
36class聽ObjectForTest{
37聽聽聽聽String聽info聽;
38聽聽聽聽聽聽聽聽
39聽聽聽聽public聽ObjectForTest(){
40聽聽聽聽聽聽聽聽info聽="default";
41聽聽聽聽}
42聽聽聽聽聽聽聽聽
43聽聽聽聽public聽ObjectForTest(String聽initInfo){
44聽聽聽聽聽聽聽聽info聽=聽initInfo聽;
45聽聽聽聽}
46聽聽聽聽聽聽聽聽
47聽聽聽聽public聽String聽getInfo(){
48聽聽聽聽聽聽聽聽return聽info;
49聽聽聽聽}
50聽聽聽聽聽聽聽聽
51聽聽聽聽publicvoid聽setInfo(String聽changeInfo){
52聽聽聽聽聽聽聽聽info聽=聽changeInfo;
53聽聽聽聽}
54}

榪愯緇撴灉鏄細

a= 2

b= 2

=============== the value has changed ===============

a= 3

b= 2

Object one

Object one

=============== the value has changed ===============

Object two

Object one



榪欓噷鍙互寰堟槑鏄劇殑琛ㄧず鍑哄叾瀹炴墍璋撶殑 Reference 鍏跺疄灝辮窡鍊肩被鍨嬫槸寰堢浉浼肩殑錛屾墍浠ユ垜浠彲浠ョ粰 Reference 鍙栦竴涓悕瀛椻?b style="mso-bidi-font-weight: normal">寮曠敤鍊?/span>鈥濄?/span>

榪欓噷鍙槸鎶?/span> o1 鐨勫紩鐢ㄥ兼嫹璐濅簡涓浠界粰 o2 銆?/span>

涓嶈繃榪欓噷瑕佹敞鎰忕殑灝辨槸铏界劧鏄紩鐢ㄥ肩殑鎷瘋礉錛屼絾浠栦滑鍗村紩鐢ㄤ簡鍚屼竴涓璞★紝浠諱綍涓涓瀵硅薄鐨勬敼鍙橀兘浼氾紝鍦ㄥ彟澶栦竴涓紩鐢ㄤ笂閮藉彲浠ユ樉紺虹殑鍑烘潵銆?br />鐪嬪涓嬬殑渚嬪瓙錛?br />

聽1package聽blog.nichlas.article.j2se;
聽2
聽3importstatic聽java.lang.System.out;
聽4
聽5publicclass聽PassByValue聽{
聽6聽聽聽聽publicstaticvoid聽testPassValue(){
聽7聽聽聽聽聽聽聽聽int聽a聽=2聽;
聽8聽聽聽聽聽聽聽聽int聽b聽=聽a聽;
聽9聽聽聽聽聽聽聽聽out.println("a=聽"+聽a聽)聽;
10聽聽聽聽聽聽聽聽out.println("b=聽"+聽b聽)聽;
11聽聽聽聽聽聽聽聽out.println("===============聽the聽value聽has聽changed聽===============");
12聽聽聽聽聽聽聽聽a聽=3聽;聽聽//聽has聽change聽the聽value聽of聽a,聽but聽tht聽value聽of聽b聽is聽never聽be聽changed
13聽聽聽聽聽聽聽聽out.println("a=聽"+聽a聽)聽;
14聽聽聽聽聽聽聽聽out.println("b=聽"+聽b聽)聽;
15聽聽聽聽}
16聽聽聽聽
17聽聽聽聽publicstaticvoid聽testPassReference(){
18聽聽聽聽聽聽聽聽ObjectForTest聽o1聽=new聽ObjectForTest("Object聽one");
19聽聽聽聽聽聽聽聽ObjectForTest聽o2聽=聽o1;
20聽聽聽聽聽聽聽聽out.println(o1.getInfo());
21聽聽聽聽聽聽聽聽out.println(o2.getInfo());
22聽聽聽聽聽聽聽聽out.println("===============聽the聽value聽has聽changed聽===============");
23聽聽聽聽聽聽聽聽o1聽=new聽ObjectForTest("Object聽two");
24聽聽聽聽聽聽聽聽out.println(o1.getInfo());
25聽聽聽聽聽聽聽聽out.println(o2.getInfo());
26聽聽聽聽}
27聽聽聽聽
28聽聽聽聽publicstaticvoid聽testChangeObject(){
29聽聽聽聽聽聽聽聽ObjectForTest聽o1聽=new聽ObjectForTest("Object聽one");
30聽聽聽聽聽聽聽聽ObjectForTest聽o2聽=聽o1;
31聽聽聽聽聽聽聽聽out.println(o1.getInfo());
32聽聽聽聽聽聽聽聽out.println(o2.getInfo());
33聽聽聽聽聽聽聽聽out.println("===============聽the聽value聽has聽changed聽===============");
34聽聽聽聽聽聽聽聽o1.setInfo("Object聽Value聽changed!");
35聽聽聽聽聽聽聽聽out.println(o1.getInfo());
36聽聽聽聽聽聽聽聽out.println(o2.getInfo());
37聽聽聽聽}
38聽聽聽聽
39聽聽聽聽publicstaticvoid聽main(String聽[]聽args){
40聽聽聽聽聽聽聽聽out.println();
41聽聽聽聽聽聽聽聽PassByValue.testPassValue();
42聽聽聽聽聽聽聽聽out.println();
43聽聽聽聽聽聽聽聽PassByValue.testPassReference();
44聽聽聽聽聽聽聽聽out.println();
45聽聽聽聽聽聽聽聽PassByValue.testChangeObject();
46聽聽聽聽}
47}
48
49class聽ObjectForTest{
50聽聽聽聽String聽info聽;
51聽聽聽聽聽聽聽聽
52聽聽聽聽public聽ObjectForTest(){
53聽聽聽聽聽聽聽聽info聽="default";
54聽聽聽聽}
55聽聽聽聽聽聽聽聽
56聽聽聽聽public聽ObjectForTest(String聽initInfo){
57聽聽聽聽聽聽聽聽info聽=聽initInfo聽;
58聽聽聽聽}
59聽聽聽聽聽聽聽聽
60聽聽聽聽public聽String聽getInfo(){
61聽聽聽聽聽聽聽聽return聽info;
62聽聽聽聽}
63聽聽聽聽聽聽聽聽
64聽聽聽聽publicvoid聽setInfo(String聽changeInfo){
65聽聽聽聽聽聽聽聽info聽=聽changeInfo;
66聽聽聽聽}
67}

緇撴灉濡備笅錛?/span>

a= 2

b= 2

=============== the value has changed ===============

a= 3

b= 2

Object one

Object one

=============== the value has changed ===============

Object two

Object one

Object one

Object one

=============== the value has changed ===============

Object Value changed

Object Value changed

浠庤繖閲屽彲浠ョ湅鍒幫紝 o1 瀵瑰璞$殑鏀瑰彉浣撶幇鍦ㄤ簡 o2 涓婁簡錛岄氳繃瀵?/span> o2 鐨勮皟鐢ㄥ彲浠ョ湅鍑恒?/span>

浠ヤ笂鏄垜瀵硅繖涓棶棰樼殑鐪嬫硶錛屽笇鏈涘ぇ瀹跺彲浠ョ粰涓鐐瑰府鍔┿?/span>




]]>
嫻佺殑浣跨敤http://www.aygfsteel.com/nicholas-sjy/articles/28459.htmlNic Sense ZoneNic Sense ZoneWed, 18 Jan 2006 04:21:00 GMThttp://www.aygfsteel.com/nicholas-sjy/articles/28459.htmlhttp://www.aygfsteel.com/nicholas-sjy/comments/28459.htmlhttp://www.aygfsteel.com/nicholas-sjy/articles/28459.html#Feedback0http://www.aygfsteel.com/nicholas-sjy/comments/commentRss/28459.htmlhttp://www.aygfsteel.com/nicholas-sjy/services/trackbacks/28459.html闃呰鍏ㄦ枃

]]>
主站蜘蛛池模板: 鹿邑县| 项城市| 宁武县| 淮北市| 菏泽市| 额济纳旗| 明光市| 梁河县| 炉霍县| 乐清市| 图木舒克市| 和平县| 宝坻区| 东明县| 南丹县| 余庆县| 专栏| 榆社县| 兴业县| 绥德县| 石河子市| 抚顺市| 汉沽区| 滦平县| 临江市| 康平县| 沙雅县| 石景山区| 四子王旗| 库伦旗| 柳林县| 淳化县| 长沙县| 缙云县| 酉阳| 红河县| 秦皇岛市| 崇州市| 巴里| 赫章县| 深泽县|