php面向对象中对属性和方法定义的问题

<?php

class Application_Model_Guestbook
{
protected $_comment;
protected $_created;
protected $_email;
protected $_id;

public function __set($name, $value);
public function __get($name);
?>
问题:
为什么一般属性如$_comment要定义成protected,方法要定义成
public ?

对属性或方法的访问控制,是通过在前面添加关键字 public、protected 或 private 来实现的。由 public 所定义的类成员可以在任何地方被访问;由 protected 所定义的类成员则可以被其所在类的子类和父类访问(当然,该成员所在的类也可以访问);而由 private 定义的类成员则只能被其所在类访问。
温馨提示:答案为网友推荐,仅供参考
相似回答