Quando ho una classe con più costruttori in cui un costruttore chiama un altro (concatenamento del costruttore), quale costruttore dovrebbe essere quello che chiamano tutti gli altri costruttori alla fine?
Ecco un esempio in cui il costruttore "all args" chiama il costruttore "no args":
class Goblin {
// always starts at 10
private int strength;
private String name;
public Goblin() {
this.strength = 10;
}
public Goblin(String name) {
this();
this.name = name;
}
}
Ecco un esempio in cui il costruttore "no args" chiama il costruttore "all args"
class Goblin {
// always starts at 10
private int strength;
private String name;
public Goblin() {
this(null);
}
public Goblin(String name) {
this.name = name;
this.strength = 10;
}
}
L'idea è che ci dovrebbe essere 1 posto dove this.strength = 10
e non dovrà essere copiato. Quale di questi è il migliore?