为了账号安全,请及时绑定邮箱和手机立即绑定

private 的访问问题

<?php

class Car{

    private $price = '1000';

    public function getPrice() {

        return $this->price; //内部访问私有属性

}

$car = new Car();

//在这里输出$car对象的name属性

echo $car->getPrice();


正在回答

3 回答

private: 私有类型
该类型的属性或方法只能在该类中使用,

在该类的实例、子类中、子类的实例中都不能调用私有类型的属性和方法

0 回复 有任何疑惑可以回复我~

你在$car = new Car();语句上面加个"}"大括号,你应该是不小心删除掉了

2 回复 有任何疑惑可以回复我~
#1

阿飞飞飞吧 提问者

是啊,这里是丢了,不过主要问题还是私有变量也不能被外部访问
2015-08-23 回复 有任何疑惑可以回复我~
#2

qq_走走_0 回复 阿飞飞飞吧 提问者

你是用调用getPrice();方法, getPrice是Car类里面的方法是不是?, 那么getPrice()方法不就可以调用私有属性$price了? 最后会输出1000的
2015-08-23 回复 有任何疑惑可以回复我~
#3

阿飞飞飞吧 提问者 回复 qq_走走_0

是的是的,谢谢!终于搞清楚了,可以间接访问的,thanks
2015-08-23 回复 有任何疑惑可以回复我~

这个怎么输出不了,是哪里写错了么?还是在方法中的私有变量也不能被外部访问?那被保护的呢?

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
PHP进阶篇
  • 参与学习       181826    人
  • 解答问题       2577    个

轻松学习PHP中级课程,进行全面了解,用PHP快速开发网站程序

进入课程

private 的访问问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信