php面向对象中对属性和方法定义的问题
答案:2 悬赏:70 手机版
解决时间 2021-04-07 17:15
- 提问者网友:锁深秋
- 2021-04-06 20:35
class Application_Model_Guestbook
{
protected $_comment;
protected $_created;
protected $_email;
protected $_id;
public function __set($name, $value);
public function __get($name);
?>
问题:
为什么一般属性如$_comment要定义成protected,方法要定义成
public ?
最佳答案
- 五星知识达人网友:天凉才是好个秋
- 2021-04-06 21:24
对属性或方法的访问控制,是通过在前面添加关键字 public、protected 或 private 来实现的。由 public 所定义的类成员可以在任何地方被访问;由 protected 所定义的类成员则可以被其所在类的子类和父类访问(当然,该成员所在的类也可以访问);而由 private 定义的类成员则只能被其所在类访问。
全部回答
- 1楼网友:枭雄戏美人
- 2021-04-06 22:21
public 表示可公共调用它,不过你不使用public也行,默认是public的
有时我们不想外部调用它,可以使用private关键字。这是php5后才加入的,一些cms源码为了兼容php4,写的类都没有这些关键字的,如果不考虑php4兼容的话建议使用关键字,养成好习惯。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯