課程
/后端開發
/Java
/Java入門第二季 升級版
為什么把這句mi.show();刪了就運行成功了呢?
2020-04-22
源自:Java入門第二季 升級版 7-8
正在回答
show是外部的方法,你定義的mi是內部的對象,內部的對象只能調用內部方法,所以下面的mi.getScore就是調用getScore()方法,然后再給mi.getScor賦值給變量newScore
內部類不可以調用外部類的方法。會報錯的,用編譯器試試你就懂了
show是HelloWorld();的對象不是內部類的對象。
你的MInner類里面根本沒有show()這個方法啊,你實例化的是MInner
個人認知----說錯的話請諒解
public class HelloWorld {??? ??? private String name = "愛慕課";??? ??? // 外部類中的show方法??? public void show() { ??// 定義方法內部類??class MInner {???int score = 83;???public int getScore() {????return score + 10;???}??}??????? ??// 創建方法內部類的對象??????? MInner mi=new MInner();??????? mi.show();??????? int newScore=mi.getScore();??????? // 調用內部類的方法???????? System.out.println("姓名:" + name + "\n加分后的成績:" + newScore);?}??? ?// 測試方法內部類?public static void main(String[] args) {??????? ??// 創建外部類的對象??????? HelloWorld mo=new HelloWorld();??????? ??????? // 調用外部類的方法??mo.show();?}}
mi是MInner類的對象? 怎么能調用外部類的方法呢 看不到你寫的源碼 貼一下
舉報
課程升級!以終為始告別枯燥,在開發和重構中體會Java面向對象編程的奧妙
4 回答為什么運行不了呢
1 回答為什么編譯時是Cat類型,運行時就變成了Dog類型呢?
3 回答為什么要把我的問題刪除了?
2 回答為什么運行不了?
2 回答為啥運行不了呢
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2020-09-23
show是外部的方法,你定義的mi是內部的對象,內部的對象只能調用內部方法,所以下面的mi.getScore就是調用getScore()方法,然后再給mi.getScor賦值給變量newScore
2020-05-29
內部類不可以調用外部類的方法。會報錯的,用編譯器試試你就懂了
2020-05-23
show是HelloWorld();的對象不是內部類的對象。
2020-04-29
你的MInner類里面根本沒有show()這個方法啊,你實例化的是MInner
個人認知----說錯的話請諒解
2020-04-22
public class HelloWorld {
???
??? private String name = "愛慕課";
???
??? // 外部類中的show方法
??? public void show() {
??// 定義方法內部類
??class MInner {
???int score = 83;
???public int getScore() {
????return score + 10;
???}
??}
???????
??// 創建方法內部類的對象
??????? MInner mi=new MInner();
??????? mi.show();
??????? int newScore=mi.getScore();
??????? // 調用內部類的方法
?
??????? System.out.println("姓名:" + name + "\n加分后的成績:" + newScore);
?}
???
?// 測試方法內部類
?public static void main(String[] args) {
???????
??// 創建外部類的對象
??????? HelloWorld mo=new HelloWorld();
???????
??????? // 調用外部類的方法
??mo.show();
?}
}
2020-04-22
mi是MInner類的對象? 怎么能調用外部類的方法呢 看不到你寫的源碼 貼一下