假设我有一个类 Test,它有一个名为 的私有属性$_list
和一个公共 setter。
public setter 用于从外部设置属性值。
class Test {
private $_list;
public function getList() {
return $this->_list;
}
public function setList($list) {
$this->_list = $list;
}
public function initialize() {
$list = array();
/* ... Some code that fills the $list with values etc. ... */
// 1) Set value directly
$this->_list = $list;
// 2) Use public setter
$this->setList($list);
}
}
问题是 - 我需要使用公共设置器在类内设置私有属性值吗?
哪种方式更好 - #1 或 #2?为什么?
你更喜欢哪种方式?我希望看到一个完整的答案,并解释每种方式的优缺点。
谢谢。