為什么要返回,直接用SUM不可以嗎
public class HelloWorld {
? ??
? ? // 定義靜態變量score1
? ? static int score1 = 86;
? ? // 定義靜態變量score2
? ? ? ?static ?int score2 = 92;?
? ? // 定義靜態方法sum,計算成績總分,并返回總分
public ?static ? int sum() {?
? ? ? sum= socre1+socre2;
? ? ??
? ? ??
}
public static void main(String[] args) {
? ? ? ??
? ? ? ? // 調用靜態方法sum并接收返回值
int allScore = sum;
? ? ? ??
System.out.println("總分:" + allScore);
}
}
2018-05-18
靜態方法中sum是方法名,方法體需要為局部變量和起個名字并賦值(因為和是返回值,方法體需要這個變量),只要符合命名要求就行,可以和方法名重名(例如變量和:int sum=score1+score2;但一般不建議,因為會混淆方法名和方法體內變量名,運行結果是正確的);
int sum= score1+score2;
? ? ?return sum;
2.調用靜態方法:
//使用類名調用
int allScore = HelloWorld.sum();
//使用對象名調用
?HelloWorld num=new??HelloWorld();
int allScore = num.sum();
正在學習,一起加油
2018-05-18
我也在學,這里呢,首先 你上面的sum=socre1+socre2 不能這樣寫,因為你上面的sum已經是方法名了, 按照你這個程序來看,這里應該返回和:return socre1+socre2 ? 。然后:int allScore = sum ?這里寫錯了,因為 你上面用了static靜態方法,所以你這里可以直接調用靜態方法sum:int allScore = HelloWorld.sum(); ? ?這樣才對,或者你也可以用對象名來調用,只是要麻煩一點。再然后 ?靜態方法中可以直接調用同類中的靜態成員,但不能直接調用非靜態成員,靜態方法中不能直接調用非靜態方法,需要通過對象來訪問非靜態方法。 ?感覺你應該是這兩個概念沒動吧,這兩個你要記住。一起學習吧,你看看是不是這樣。