菜鸟 问个 问题啊

来源:2-1 PHP类和对象

慕姐4424294

2015-12-04 10:07

class Car0 {

    var $name = '汽车';

    function getName() {

        return $this->name;

    }

}


//实例化一个car对象

$car = new Car0();

$car->name = '奥迪A6'; //设置对象的属性值

echo $car->getName();  //调用对象的方法 输出对象的名字

 这是 课堂上的代码 如果 我不写 $car->name='奥迪A6'的话  会输出 汽车 这个属性名字 

我想问的是 $car->name='奥迪A6'  是不是 把class Car 里面的$name='汽车'给修改了?奥迪A6 是不是把$name='汽车' 给覆盖了 变成 $name='奥迪A6'了呢? 求详细解答 

写回答 关注

1回答

  • 木子舟义
    2015-12-04 10:30:38
    已采纳

    首先呢 class里的var可以去掉,

    $car = new Car0()  是实例化了一个Car类的对象。

    $car->name='奥迪A6'   会覆盖 原有的$car->name  值为 '汽车' 的值。

    和类Car0 没有关系   你可以再实例化以个$car2 = new Car0()     echo  $car2->name 试一下不就知道了吗


    <?php 

        header("Content-type: text/html; charset=utf-8"); 

    class Car0 {

        public $name = '汽车';

        public function getName() {

            return $this->name;

        }

    }


    $car1 = new Car0();

    $car1->name = 'A8';

    echo $car1->name;   //输出 A8


    $car2 = new Car0();

    echo $car2->name;  //输出 汽车

     ?>


    我说明白了吗?

    慕姐4424...

    非常感谢!谢谢啊 我的确做实验了 是这样的

    2015-12-04 11:20:56

    共 1 条回复 >

PHP进阶篇

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

181727 学习 · 2575 问题

查看课程

相似问题