【发布时间】:2011-11-21 23:48:57
【问题描述】:
我在 setter 方法中验证输入数据,不想在构造函数中再次验证它。我想知道在构造函数中调用 setter 是否是个好主意?
【问题讨论】:
标签: java constructor setter
我在 setter 方法中验证输入数据,不想在构造函数中再次验证它。我想知道在构造函数中调用 setter 是否是个好主意?
【问题讨论】:
标签: java constructor setter
从构造函数调用 setter 就可以了。促进代码重用。
【讨论】:
是的,你可以在构造函数中调用setter。
Sample() {
setName("name");
}
不禁止
【讨论】:
通常被认为是安全的,但有以下警告:
唯一可能遇到的麻烦是setter(或从构造函数调用的任何方法)是否在子类中被覆盖。为了绝对安全(偏执?),请确保从构造函数调用的所有方法都是最终的。
【讨论】: