課程
/后端開發(fā)
/Java
/Java入門第二季 升級版
為什么我的主程序報錯,說必須在類的方法前加static…然而視頻里并沒有加static…
2015-06-06
源自:Java入門第二季 升級版 8-5
正在回答
一個是創(chuàng)建這個類的實例就是所說的new一下,另外就是添加static,讓他變成靜態(tài)的,因為靜態(tài)是可以不依賴實例就可以調(diào)用的
大兄弟? 你要先創(chuàng)建個類的實例 通過 sanxin.change() 來調(diào)用啊~
1 ? ?package com.edu.imooc; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
2????public class Object {
3????public static void main(String[] args) {
4????// TODO Auto-generated method stub
5????tellPhone sanxin = new tellPhone();
6????sanxin.screen = 2.5f;
7????sanxin.cpu = 4.0f;
8????sanxin.price = 2568;
9????sanxin.call();
10????sanxin.msg();
11 ? ?//調(diào)用Change方法
12 ? ?int dollar =Change(sanxin.price);
13????System.out.println("美元是"+dollar);
14????}
15????//解決方法1 ?添加 static
16????public static int ?Change(int i){
17????int ?dollar;
18????dollar = i * 6;
19????return dollar;
} ?
}
第十一行 ?要調(diào)用change方法 ?除了 添加 static 還有什么辦法嗎?
鮮衣
你的錯誤是直接在main()方法中調(diào)用類的非靜態(tài)方法(即未加static),而老師的視頻里面是先通過new創(chuàng)建類的對象,然后? 類的對象.方法? 來調(diào)用方法。還有疑問再問我。
貼代碼。提示所調(diào)方法需要加上static修飾,說明你在static修飾的靜態(tài)方法中試圖去調(diào)用一個非靜態(tài)的方法,該操作只能通過兩種方法實現(xiàn),一種就是你說的,將被調(diào)方法加上static修飾為靜態(tài)方法,還有一種是實例化一個方法所在類的對象,使用對象去調(diào)用該方法。
舉報
課程升級!以終為始告別枯燥,在開發(fā)和重構(gòu)中體會Java面向?qū)ο缶幊痰膴W妙
1 回答為什么不能訪問外部類,而要加static
3 回答方法名前加了關(guān)鍵字static后,會出錯?
3 回答定義成員變量的時候 static必須要加嗎 不加是什么情況
3 回答為什么這里必須輸入public static void main(String[] args)?
5 回答mian方法中加了static后會報錯,這個怎么處理?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2016-10-12
一個是創(chuàng)建這個類的實例就是所說的new一下,另外就是添加static,讓他變成靜態(tài)的,因為靜態(tài)是可以不依賴實例就可以調(diào)用的
2015-11-15
大兄弟? 你要先創(chuàng)建個類的實例 通過 sanxin.change() 來調(diào)用啊~
2015-07-20
1 ? ?package com.edu.imooc; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
2????public class Object {
3????public static void main(String[] args) {
4????// TODO Auto-generated method stub
5????tellPhone sanxin = new tellPhone();
6????sanxin.screen = 2.5f;
7????sanxin.cpu = 4.0f;
8????sanxin.price = 2568;
9????sanxin.call();
10????sanxin.msg();
11 ? ?//調(diào)用Change方法
12 ? ?int dollar =Change(sanxin.price);
13????System.out.println("美元是"+dollar);
14????}
15????//解決方法1 ?添加 static
16????public static int ?Change(int i){
17????int ?dollar;
18????dollar = i * 6;
19????return dollar;
} ?
}
第十一行 ?要調(diào)用change方法 ?除了 添加 static 還有什么辦法嗎?
2015-06-16
你的錯誤是直接在main()方法中調(diào)用類的非靜態(tài)方法(即未加static),而老師的視頻里面是先通過new創(chuàng)建類的對象,然后? 類的對象.方法? 來調(diào)用方法。還有疑問再問我。
2015-06-06
貼代碼。提示所調(diào)方法需要加上static修飾,說明你在static修飾的靜態(tài)方法中試圖去調(diào)用一個非靜態(tài)的方法,該操作只能通過兩種方法實現(xiàn),一種就是你說的,將被調(diào)方法加上static修飾為靜態(tài)方法,還有一種是實例化一個方法所在類的對象,使用對象去調(diào)用該方法。