課程
/后端開發
/Java
/Java入門第二季 升級版
為什么能通過,顯示的不是93
2018-06-22
源自:Java入門第二季 升級版 7-8
正在回答
//外部類 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(); ???????? ????????//?調用內部類的方法 ????????int?newScore?=mi.getScore(); ???????? ????????System.out.println("姓名:"?+?name?+?"\n加分后的成績:"?+?newScore); ????} ???? ????//?測試方法內部類 ????public?static?void?main(String[]?args)?{ ???????? ????????//?創建外部類的對象 ????????HelloWorld?mo?=?new?HelloWorld(); ???????? ????????//?調用外部類的方法 ????????mo.show(); ????} }
你代碼沒發上來,你讓我猜我還真不好猜是哪里出了問題,? 你可以對照我的找一下問題所在。 建議你根據注釋的流程一步一步的在腦子里過一遍,看是在哪里去了問題,?
另外不要一味的往死里鉆,要跳出來理解一下,可以根據這個流程自己在心里做個比喻和假設。
你應該寫成這樣了:
MInner newScore=new MInner();
? ? ? ? newScore.getScore();??
System.out.println("姓名:" + name + "\n加分后的成績:" + newScore);
打印對象newScore相當于調用對象的toString方法(newScore.toString())
這是它本身的源碼getClass().getName() + "@" + Integer.toHexString(hashCode())
具體可以看看這個視頻https://www.bilibili.com/video/av20477958/?p=90
舉報
課程升級!以終為始告別枯燥,在開發和重構中體會Java面向對象編程的奧妙
6 回答為什么我這一段運行結果是83,而不是93呢?
1 回答為什么我輸出的是3
1 回答為什么前三行輸出的是按照通過初始化。。。。。num3,通過初始化。。。。num2,通過初始化。。。。num1的順序而不是翻過來,倒數兩行沒輸出通過初始化num3那行
2 回答為什么我的金字塔輸出是一列輸出
1 回答為什么我的輸出會是四行?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2018-06-23
你代碼沒發上來,你讓我猜我還真不好猜是哪里出了問題,? 你可以對照我的找一下問題所在。 建議你根據注釋的流程一步一步的在腦子里過一遍,看是在哪里去了問題,?
另外不要一味的往死里鉆,要跳出來理解一下,可以根據這個流程自己在心里做個比喻和假設。
2018-07-22
你應該寫成這樣了:
MInner newScore=new MInner();
? ? ? ? newScore.getScore();??
System.out.println("姓名:" + name + "\n加分后的成績:" + newScore);
打印對象newScore相當于調用對象的toString方法(newScore.toString())
這是它本身的源碼getClass().getName() + "@" + Integer.toHexString(hashCode())
具體可以看看這個視頻https://www.bilibili.com/video/av20477958/?p=90