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

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

請大家幫我看看我的代碼的問題是什么,在JAVA環境中沒有錯誤,但是運行不出來結果,謝謝大家咯

public class HelloWorld {

? ??

? ? // 定義靜態變量score1

? ? static int score1 = 86;

? ? // 定義靜態變量score2

? ? ? ? ? int score2 = 92;

? ? ? ? HelloWorld world=new HelloWorld();


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

public? ? ?int sum() {??

? ? return score1+world.score2;??

? ? ??

}


public static void main(String[] args) {

? ? ? ??

? ? ? ? HelloWorld hello=new HelloWorld();

int allScore =hello.sum();

? ? ? ??

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

}

}


正在回答

4 回答

只有在靜態(static)方法調用非靜態方法或變量才需要實例化類。

這個練習兩個變量全是靜態,兩個方法也是靜態用不到實例化類。

HelloWorld world=new HelloWorld();去掉

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)?{????????????????
????int?allScore?=sum();????????		
????System.out.println("總分:"?+?allScore);	
????}
}

如果你要嘗試靜態方法調用非靜態變量可以這樣

public?class?Helloworld{
????//?定義靜態變量score1
????static?int?score1?=?86;
????//?非靜態變量score2
????int?score2?=?92;
????//?非靜態方法sum,計算成績總分,并返回總分
????public?int?sum()?{
????return?score1?+?score2;
????}
????public?static?void?main(String[]?args)?{
????Heloworld?hello?=?new?Helloworld();
????int?allScore?=?hello.sum();
????System.out.println("總分:"?+?allScore);
????}
}

請采納?

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

weixin_慕粉5402365 提問者

謝謝啦! 很清楚
2019-07-24 回復 有任何疑惑可以回復我~
#2

weixin_慕仙1144841 回復 weixin_慕粉5402365 提問者

我看到兩處
2019-08-01 回復 有任何疑惑可以回復我~

public class HelloWorld {

? ? // 定義靜態變量score1

? ? static int score1 = 86;

? ? // 定義靜態變量score2

????static int score2 = 92;?


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

public static int sum() {

? ? ? ? int allScore;

? ? ? ? ? ? allScore=score1+score2;

? ? ? ? ? ? return allScore;

}


public static void main(String[] args) {

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

int allScore = sum();

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

}

}

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

第二個變量沒定義是靜態的

static int score2 = 92;

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

HelloWorld world=new HelloWorld();去掉,然后world.score2改成this.score2

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

weixin_慕粉5402365 提問者

沃,這樣就對了,那請問為什么要這樣改呢,我的那個出錯的點是什么啊,謝謝
2019-07-23 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

請大家幫我看看我的代碼的問題是什么,在JAVA環境中沒有錯誤,但是運行不出來結果,謝謝大家咯

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

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

幫助反饋 APP下載

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

公眾號

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