静态方法调用静态变量的问题。。 return $speed+10;为什么错的??一定要写return self::$speed+=10;?

来源:2-6 PHP类和对象之Static静态关键字

qq_我_146

2017-01-05 09:03

class Car {

    private static $speed = 10;    

    public function getSpeed() {

        return self::$speed;

    }  

    //在这里定义一个静态方法,实现速度累加10

public static function speedUp(){

    return $speed+10;

}

}

$car = new Car();

Car::speedUp();  //调用静态方法加速$speed+10

echo $car->getSpeed();  //调用共有方法输出当前的速度值


写回答 关注

1回答

  • 非专业人士
    2017-01-05 10:47:55
    已采纳

    静态变量是整个类的,静态方法只能访问静态变量,只能使用self或static关键字访问

    非专业人士 回复qq_我_1...

    是的 子类调用可以用parent也可以被子类重新赋值

    2017-01-10 16:40:42

    共 2 条回复 >

PHP进阶篇

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

181943 学习 · 2668 问题

查看课程

相似问题