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

為了賬號安全,請及時綁定郵箱和手機立即綁定

為什么這個靜態方法傳入參數會報錯。而正確答案不需要傳入參數

public class HelloWorld {

? ??

? ? // 定義靜態變量score1

? ? static int score1 = 86;

? ? // 定義靜態變量score2

? ? ?static? ? ?int score2 = 92;?


? ? // 定義靜態方法sum,計算成績總分,并返回總分

public? static? ?int sum(int score1,int score2) {?

? ? ? int sum=score1+score2;

? ? ? ?return sum;

? ? ?

? ? ??

? ? ??

}


public static void main(String[] args) {

? ? ? ??

? ? ? ? // 調用靜態方法sum并接收返回值

int allScore = HelloWorld.sum();

? ? ? ??

System.out.println("總分:" + allScore);

}

}



正在回答

3 回答

https://img1.sycdn.imooc.com//5be64ce0000148b005890745.jpg因為你的靜態方法中有參數,你調用的時候要傳入參數。下面是我的方法,靜態方法無參數。

public class HelloWorld {
??? // 定義靜態變量score1
??? static int score1 = 86;
??? // 定義靜態變量score2
??? static??????? int score2 = 92;

??? // 定義靜態方法sum,計算成績總分,并返回總分
?public? static int sum() {?
????? return score1+score2; ??
?}

?public static void main(String[] args) {
???? HelloWorld demo=new HelloWorld();
???????
??????? // 調用靜態方法sum并接收返回值
??int allScore = demo.sum();
???????
??System.out.println("總分:" + allScore);
?}
}


0 回復 有任何疑惑可以回復我~
#1

沒有思想的Java小白 提問者

O m明白了。謝了
2018-11-10 回復 有任何疑惑可以回復我~

你定義的靜態方法是帶參的,但是你調用的HelloWorld.sum();調用的是無參的。在你定義帶參同名靜態方法后,Java不會自動生成無參,所以會報錯。

0 回復 有任何疑惑可以回復我~

而且你傳入參數后,和全局的static變量就沒有關系了,以你傳入的參數為準

1 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

為什么這個靜態方法傳入參數會報錯。而正確答案不需要傳入參數

我要回答 關注問題
微信客服

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

幫助反饋 APP下載

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

公眾號

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