package com.heima;/*1、 定義一個ClassName接口,接口中只有一個抽象方法getClassName()。設計一個類Company,該類實現接口ClassName中的方法getClassName(),功能是獲取該類的類名稱。編寫應用程序使用Company類。*/public class Demo1 { public static void main(String[] args) { ClassName name = new Company(); System.out.println(name.getClassName()); }}package com.heima;public class Company implements ClassName { public String getClassName() {// 返回一個實例返回方法指定類型的值;結束方法的執行 return "company"; }}package com.heima;public interface ClassName { public String getClassName();}?為什么不能通過對象名直接調用,非要加上輸出語句?name.getClassName();這樣調用為什么不行啊
3 回答
已采納

Yexiaomo
TA貢獻152條經驗 獲得超157個贊
因為 直接調用?name.getClassName(); 只會返回值,并不會在屏幕上打印
加上輸出語句 只是 把 getClassName() 的返回值 打印出來, 方便觀察, 學習
QAQ

昵稱已占有
TA貢獻1條經驗 獲得超1個贊
樓上說的是對的,name.getClassName();其實是獲取了你的類名的,只是看不出來(沒有執行打?。?,println是將值打印出來,如下:
//將值賦給myClassName,用來檢測name.getClassName()是否執行了
String myClassName = name.getClassName();
//將myClassName的值打印,如果輸出,則說明name.getClassName()已經執行,相反,,,,
System.out.println(myClassName);
添加回答
舉報
0/150
提交
取消