2015-10-10 48 views
1

我正在用Java創建一個文本冒險遊戲。我創建了一個出口,房間,生物和物品類,現在我正在實例化併爲他們在我的主類中添加值。冒險遊戲構造方法問題Java

我雖然得到這個問題:因爲我創造了我的房間退出時,我得到一個編譯器錯誤說

類出口構造退出不能被應用到給定類型

這是代碼行,我發現了編譯器錯誤:

Exit exit1 = new Exit("Exit1", "Exit description", "Exit transition text"); 

,並在我的Exit類我有這樣的構造方法:

public void Exit(String exit, String exitDescription, String exitTransition) { 
    this.Exit(exit, exitDescription, exitTransition);  
} 

但每次我告訴IDE(Netbeans的)來糾正編譯器錯誤的時間,它在我的Exit類生成的:

Exit(String exit1, String exit_description, String exit_transition_text) { 
    throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. 
} 

所以我的問題是,爲什麼我的構造方法工作?另外,我得到了我的教授的幫助,我相信他說我不想要生成的代碼。儘管不記得。

+2

'公共無效Exit'不是構造函數,這是一個方法 – MadProgrammer

+1

請閱讀幫助/ MCVE文件並提供缺少的部分。您也可以備份到以前的代碼工作版本,並嘗試一次向前移動幾行。沒有最小的,完整的和可驗證的例子(mcve),我們不能幫助太多。 – Prune

回答

4

這不是一個構造函數:

public void Exit(String exit, String exitDescription, String exitTransition) { 

構造函數沒有返回類型。

這是一個構造函數:

public Exit(String exit, String exitDescription, String exitTransition) { 

當然,你知道,即使這是一個有效的構造,因爲它似乎你要在它的身上代碼中並沒有太大的意義具有構造函數遞歸調用自身:

// void removed 
public Exit(String exit, String exitDescription, String exitTransition) { 
    this.Exit(exit, exitDescription, exitTransition); // this calls itself! 
} 
+0

你也可以說一些關於構造函數的內容。我不確定OP在那裏試圖做什麼。 –

+0

好的,非常感謝那幫了我很多,所以在這個方法的範圍內,我可以放任何東西嗎?或者保持空白,因爲當我在主類中調用方法時,我會做所有的事情? – noct27

+0

刪除無效的返回語句使得所有的編譯器錯誤消失所以,今晚再次閱讀構造方法章節以獲得更好的理解 – noct27