為什么這個靜態方法傳入參數會報錯。而正確答案不需要傳入參數
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);
}
}
2018-11-10
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);
?}
}
2018-12-16
你定義的靜態方法是帶參的,但是你調用的HelloWorld.sum();調用的是無參的。在你定義帶參同名靜態方法后,Java不會自動生成無參,所以會報錯。
2018-11-10
而且你傳入參數后,和全局的static變量就沒有關系了,以你傳入的參數為準