課程
/后端開發
/Java
/Java入門第二季 升級版
既然構造方法沒有返回值,那么定義方法時為什么不加 void?還是這里所說的返回值和 return不同?
2016-04-14
源自:Java入門第二季 升級版 8-6
正在回答
這就是規定,如果你現在自己做一個新語言的編譯器,也可以規定構造函數必須加上void,或者一個特殊的返回值。 ? 那么為什么構造函數沒有返回值呢,主要是為了區分構造函數和其它方法。其實,你可以嘗試在你的構造函數前加上void,你會發現編譯可以通過,但是編譯器把它認為是方法,而不是構造函數,當然也無法在new的時候自動調用。
鳥山明 提問者
public?class?Telephone?{ ?float?cpu; ? ??/** ???*?@param?args ???*/ ??public?static?void?main(String[]?args)?{ ????Telephone?phone=new?Telephone(); ????Telephone?phone2=new?Telephone(6.0f); ??} ????public?void?Telephone(){ ?????System.out.println("無參數"); ????} ????public?void?Telephone(float?newCpu){ ?????if(newCpu>4){ ??????System.out.println("輸入有誤"); ??????cpu=2.0f; ?????}else{ ??????cpu=newCpu; ?????} ?????System.out.println("有參數"); ????} ?}
simon_qin
鳥山明 提問者 回復 simon_qin
同學有興趣的話可以百度一下構造方法和實例化對象之間的關系,這樣可以更容易的區分一般的創建方法和構造方法的不同之處
public void xxx(){方法代碼;(無return)},
public int xxx(){方法代碼;return xxx(int類型變量);}
這里的 void 和 int 都是用來區分這個方法有沒有返回值
public void int xxx(){方法代碼;}這種寫法是錯誤的,編譯器是不能識別的
simon_qin 回復 鳥山明 提問者
void是定義沒有返回值的方法;
如果你想要這個方法有返回值的話就不能用void定義,要用與返回值相同的類型來定義這個方法
比如你想返回一個int類型的值的方法就用int來定義這個方法
舉報
課程升級!以終為始告別枯燥,在開發和重構中體會Java面向對象編程的奧妙
4 回答方法都沒有返回值嗎
3 回答public是沒有返回值類型么?
2 回答void是什么返回值類型,還有那些返回值類型
7 回答返回值問題
2 回答沒有數據返回
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2016-04-14
這就是規定,如果你現在自己做一個新語言的編譯器,也可以規定構造函數必須加上void,或者一個特殊的返回值。
? 那么為什么構造函數沒有返回值呢,主要是為了區分構造函數和其它方法。其實,你可以嘗試在你的構造函數前加上void,你會發現編譯可以通過,但是編譯器把它認為是方法,而不是構造函數,當然也無法在new的時候自動調用。
2016-04-15
2016-04-15
同學有興趣的話可以百度一下構造方法和實例化對象之間的關系,這樣可以更容易的區分一般的創建方法和構造方法的不同之處
2016-04-14
public void xxx(){方法代碼;(無return)},
public int xxx(){方法代碼;return xxx(int類型變量);}
這里的 void 和 int 都是用來區分這個方法有沒有返回值
public void int xxx(){方法代碼;}這種寫法是錯誤的,編譯器是不能識別的
2016-04-14
void是定義沒有返回值的方法;
如果你想要這個方法有返回值的話就不能用void定義,要用與返回值相同的類型來定義這個方法
比如你想返回一個int類型的值的方法就用int來定義這個方法
2016-04-14
這就是規定,如果你現在自己做一個新語言的編譯器,也可以規定構造函數必須加上void,或者一個特殊的返回值。
? 那么為什么構造函數沒有返回值呢,主要是為了區分構造函數和其它方法。其實,你可以嘗試在你的構造函數前加上void,你會發現編譯可以通過,但是編譯器把它認為是方法,而不是構造函數,當然也無法在new的時候自動調用。