public class InitialisingFields {
private final String a;
private final String b;
private final String c;
InitialisingFields(String a,String b){
this.a = a;
this.b = b;
}
InitialisingFields(String a,String b,String c){
this(a , b);
this.c = c;
}
public static void main(String[] args) {
InitialisingFields i = new InitialisingFields("A","B","C");
}
}
我想寫InitialisingFields(String a,String b,String c)
構造函數,但它給我編譯錯誤。如何編寫2個構造函數來初始化2個不同的私有最終變量?
爲InitialisingFields(String a,String b)
它說:「最後的空白領域c可沒有被初始化」 & 爲InitialisingFields(String a,String b,String c)
它說:「最後的空白領域c可已經被初始化」
我不想修改InitialisingFields(String a,String b)
和添加一個參數,因爲它已被很多類使用,我將不得不重構大量的類。並且對於我的用例,我希望使用此類的對象和其他參數。
你想要什麼'C'是如果不提供? –
所有_final_變量必須在_each構造函數_的末尾初始化。 –
我希望c只在我調用構造函數時才被初始化。所以這樣我就不會打破現有的類。 –