我在博士Java中收到一條錯誤消息,表示我的構造函數未定義爲String,int,int,儘管我的構造函數具有這些參數(以相同順序),並且所有內容都是大小寫匹配的。這也不是一個課程像另一個線程建議的那樣過時的問題。爲什麼Java說我的構造函數是未定義的,即使它是?
這裏是我的「商城」類構造函數接受一個字符串,一個int和一個int
public class Mall{
//declare variables
private String name;//name of the mall
private int length; //length of the mall = # of columns of stores array
private int width; //width of the mall = # of rows of stores array
public void Mall(String name, int length, int width){
//this is the constructor I want to use
this.name=name;
this.length=length;
this.width=width;
}
}
,這裏是我的主要方法
public class Test1{
public static void main(String[] args){
Mall m = new Mall("nameOfMall", 3, 3); //here is where the error happens
}
}
我試圖創建一個構造函數沒有參數,然後在我的對象創建語句中傳遞沒有參數,雖然這不會導致任何編譯錯誤,但它不會將它設置爲適當的值。此外,我可以調用Mall類中的其他方法,這使得我相信這是創建語句的問題,而不是Mall類中的任何問題。我有權這樣想嗎?什麼導致了錯誤?
我沒有看到任何構造函數。 (提示:'void'。投票結束爲拼寫錯誤。) –
void這個詞讓Java將以下內容理解爲方法,而不是構造函數。構造函數根本沒有返回類型。 – RealSkeptic
我不知道,謝謝! – JessStormBorn