0

構築関数でデフォルトのarument値を次のように設定できますか?

public class XLSReader {
  public XLSReader(String filename="XYZ.xls") {
  }
}
4

3 に答える 3

3

いいえ。Javaはオプションのパラメータをサポートしていません。ただし、オーバーロードとチェーンを使用できます。

public XlsReader() {
    this("XYZ.xls");
}

public XlsReader(String filename) {
    // Use filename here
}

(これは、コンストラクターだけでなくメソッドにも適用されます。)

于 2012-04-27T11:58:39.133 に答える
2

いいえ、できません。デフォルトのパラメータはJavaではサポートされていません。

于 2012-04-27T11:58:26.743 に答える
2

いいえ、できませんが、できることは、次のような2つのコンストラクターを持つことです。

public class XLSReader {
  String filename;

  // constructor with a filename argument
  public XLSReader(String filename) {
     this.filename = filename;
  }

  // default constructor will fill-in "default value" XYZ.xls
  public XLSReader() {
     this.filename = "XYZ.xls";
  }
}
于 2012-04-27T11:59:18.670 に答える