如何使用多个构造函数只实例化每个构造函数变量ones



我需要避免使用这些构造函数重复代码,所以我想知道是否有一种方法可以实例化这些变量——只有一个?我看到了很多关于链接的帖子,但我还没有让它正常工作。

class Trainingsschema
{
// create an arrayList for every oefening
private String klant;
private String trainer;
private Integer nummer;
private ArrayList<Oefening> alleOefeningen;
// two different constructors to correctly initialise the class variables
public Trainingsschema(String klant, String trainer)
{
this.klant = klant;
this.trainer = trainer;
this.nummer = this.volgendUniekNummer();
this.alleOefeningen = this.initialiseerOefeningen();
}
public Trainingsschema(String klant)
{
this.klant = klant;
this.trainer = null;
this.nummer = this.volgendUniekNummer();
this.alleOefeningen = this.initialiseerOefeningen();
}

您应该有一个构造函数来初始化所有变量。使用其他构造函数的默认值调用它,如下所示:

class Trainingsschema
{
// create an arrayList for every oefening
private String klant;
private String trainer;
private Integer nummer;
private List<Oefening> alleOefeningen;
// two different constructors to correctly initialise the class variables
public Trainingsschema(String klant, String trainer)
{
this.klant = klant;
this.trainer = trainer;
this.nummer = this.volgendUniekNummer();
// Show the method where you initialize the array.  Why do you need method?
this.alleOefeningen = new ArrayList<>();
}
public Trainingsschema(String klant)
{
this(klant, null);
}
}

最新更新