问答详情
源自:2-1 PHP类和对象

我这样理解对不对呢?还有很多不连贯的地方,请指点迷津~~好困惑啊

<?php
//定义一个类
class Car {
    var $name = '汽车'; //定义car这个类的名字「汽车」
    function getName() { //这个类的函数名getName
        return $this->name; //函数内容 返回值的当前值调用name(有点别扭)
    }
}

$car = new Car();  // 实例化Car
$car->name = '奥迪A6'; // 实例化的Car 调用name属性,赋值为「奥迪A6」
echo $car->getName();  // 实例化的Car调用函数getName并输出

Ask(如果这样理解没问题)

  1. 函数与类是什么关系?为什么在定义类的时候会用到function;

  2. var是什么作用?之前有人问的var的作用,答案是默认值public private protected,他们三个是什么意思,与var又有什么关系?以及如果没有后面三行代码,在上半部分末尾加上echo $name; 为什么没有输出结果呢?

  3. 最后一行代码echo $car->getName(); 改为echo $name;也没有任何结果是为什么呢?

提问者:Helen_Kitty 2015-09-24 15:56

个回答

  • 思君满月
    2015-09-25 10:07:43
    已采纳

    你是php的新人吧,你问的问题还是很有意义的,下面逐一回答你的问题:

    1,类和函数是什么关系:没有什么必然的关系,函数是对特定操作的封装,比如add($a,$b)进行加法计算,封装函数的目的是为了代码的重用。类是对事物的抽象,想一想,你如何用代码来表示一辆车呢?有了类我们就可以做到了。类中主要有两类成员,一是成员变量,二是成员方法。变量是表述对象的属性,如车的名字,方法是描述对象的操作,例如车可以跑。

    2.var有什么用?php4中引入了面向对象的支持(之前不支持面向对象),在php4中定义成员变量的方式就是通过var关键字。但是php5对面向对象进行了增强,var关键字被废弃了。取而代之的是public,private,protected三个关键字,这三个关键字什么意思,慕课网上有视频的,自己去看。

    3.echo $name为什么没有输出?你参加party,周围一群美女,你对着天花板大喊一句,叫什么名字,你期望谁会回答你呢?你要输出$name,总得明确输出哪个对象的$name。

  • 年轮72
    2015-11-07 21:21:41

    echo car->getName();