亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

靜態變量賦值后,不是所有對象共享嗎?

靜態變量賦值后,不是所有對象共享嗎?

qq_控心_0 2017-05-29 22:23:00
為什么main方法中輸出的a的值不是30?這是結果:c=30靜態方法add中的a=30main方法中的a=10代碼:package hello;public class eg { static int a=10; static int b=20; public static void add(int a,int b){ int c=a+b; System.out.println("c="+c); a=c; System.out.println("靜態方法add中的a="+a); } public static void main(String[] args) { add(a,b); System.out.println("main方法中的a="+a); }}
查看完整描述

3 回答

已采納
?
精慕門9254224

TA貢獻167條經驗 獲得超46個贊

你給方法中的型參a賦值為30,與類屬性a完全沒有關系!
查看完整回答
反對 回復 2017-05-30
  • qq_控心_0
    qq_控心_0
    但是我傳入進去的是類變量a,然后add方法中的那個a得到相加后的c的賦值,這個a不是類變量?
  • 精慕門9254224
    精慕門9254224
    不是類變量他們的內存地址是不一樣的,你改變的只是方法變量的值,類變量一直在靜態區沒有變過!
  • 精慕門9254224
    精慕門9254224
    你賦值給eg.a就是給類變量賦值了!
  • 3 回答
  • 0 關注
  • 1824 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號