在构造函数方法中将类的所有属性作为参数传递是否有意义?
例如,
class Person {
constructor(name, surname, age, occupation, houseAddress, maritalStatus) {
this._name = name;
this._surname = surname;
this._age = age;
this._occupation = occupation;
this._houseAddress = houseAddress;
this._maritalStatus = maritalStatus;
/// methods...
}
}
答案 0 :(得分:1)
一切皆有可能,但有很多参数作为输入参数,它被认为是bad practice。
作为一种缓解措施,您可以考虑在结构中包含使语义更有意义的属性。
另一方面,尽管你拥有构造时需要的所有数据,但是没有完全初始化构造函数中的对象,这是一个更糟糕的解决方案。除非你有义务这样做,否则绝不允许对象单一化。