[英]Auto generate constructor with default initialization of variables
這可能是一個超級-懶的問題。
是否有可能在Eclipse中生成構造函數,例如
class A{
int a;
String b;
float c;
/* Is it possible to auto-generate this*/
public A() {
a = 0;
b = "";
c = 0f;
}
}
我知道默認情況下初始化會解決這個問題,但是我需要這樣一個自動生成的代碼,以便可以將say int的默認值更改為5,將float更改為3,依此類推。
如果不可用,則下一個最佳選擇是使用字段生成構造函數,然后將其轉換為該值。
為此,請在聲明它們時設置字段:
class A{
int a = 9;
String b = "";
float c = 0f;
您嘗試獲得的結果沒有直接的方法,但是是的,有一種方法可以根據類中的字段自動生成構造函數。
在Eclipse中,轉到...
使用字段源/生成構造函數...
...然后您可以選擇要初始化的字段,然后更改構造函數的默認值和參數。
注意:對於您的解決方案,請選擇要初始化的字段,然后將它們從構造函數的參數中刪除,這樣它將成為沒有參數的構造函數 。
有關更多信息,請訪問此鏈接。 http://www.eclipseonetips.com/2010/03/08/generate-class-constructors-in-eclipse-based-on-fields-or-superclass-constructors/
您可以在字段聲明中更改默認值:
class A {
private int a = 3;
private String b = "asdf";
private float c = 3;
...
}
但是,如果您希望客戶提供值,那么最好將它們接受為構造函數參數:
public A() { } // default constructor will use the values in the fields
public A(int a, String b, int c) {
this.a = a;
this.b = b;
this.c = c;
}
我認為沒有。 因為,正如您所說,您不需要它。 無論如何,原語都會初始化為-如果要更改它們,請這樣做。 而且eclipse不能知道非基元的默認值是多少。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.