【发布时间】:2010-08-11 16:36:18
【问题描述】:
我正在进入 OOP,但遇到了以下两难境地。我有一个类:
class Recipe {
var $title;
var $time;
var $ingredients = array();
var $instructions;
var $category;
function __construct($title, $time, $ingredients, $instructions, $category) {
$this->title = $title;
...
}
function getTitle() {
return $this->title;
}
}
所有属性都是公开的(默认情况下)。我是否必须为所有这些属性(例如 getTitle)定义访问器方法,或者我可以直接引用这些属性,如下所示:
...
$recipe = new Recipe($title, $time, $ingredients, $instructions, $category);
echo $recipe->title; // versus $recipe->getTitle();
看起来我将节省大量时间而不必定义访问器方法。但是我想知道这种方法的优缺点是什么?
【问题讨论】: