我有多個類,並試圖調用另一個類中的方法。 這應該工作,但它給錯誤:調用另一個類的方法java
TheMethods method = new TheMethods();
的Java告訴我,構造TheMethods()是不確定的。 我做錯了什麼?
編輯: 我需要一個引用傳遞到我的主類,並對其進行初始化。
我有多個類,並試圖調用另一個類中的方法。 這應該工作,但它給錯誤:調用另一個類的方法java
TheMethods method = new TheMethods();
的Java告訴我,構造TheMethods()是不確定的。 我做錯了什麼?
編輯: 我需要一個引用傳遞到我的主類,並對其進行初始化。
在您的構造函數中,您有一個參數MCTag m
。如果你要使用這個構造器,你需要做的是這樣的:
TheMethods method = new TheMethods(MCTag m);
構造就像任何其他方法,並必須有以正確的參數才能正常工作。
編輯: 這將是這個樣子:
MCTag myTag;
TheMethods method = new TheMethods(myTag);
method.selectPlayer();
你TheMethods提供的唯一的構造是
public TheMethods(MCTag m) {...
這需要一個MCTag參數,而你試圖調用的,因爲編譯器告訴你,不存在一個無參數的構造函數。
添加默認的構造函數與無參數
公共TheMethods(){}
那麼我就不能引用主類.. – hawkfalcon 2012-08-10 00:31:54
當您必須創建一個新的TheMethods對象時,請確保您傳入一個類型爲mctag的參數。這樣,你不會遇到錯誤。 – Neel 2012-08-10 00:47:26
我在你的代碼中看到的唯一的構造函數是:
public TheMethods(MCTag m)
,但你不傳遞任何您的示例代碼中的值在這裏
此處不存在任何TheMethods()ctor定義
引用一個公共方法在另一個類,叫
Class.Method();
「令牌」m「上的語法錯誤,刪除此令牌」 – hawkfalcon 2012-08-10 00:30:00
「MCTag m」是數據類型「MCTag」,「m」只是一個變量。所以你需要傳入'MCTag'類型的局部變量。 – BlackHatSamurai 2012-08-10 00:31:56
好的。然後參考? – hawkfalcon 2012-08-10 00:35:46