类的方法也具有public,protected 以及 private 的访问控制。
访问控制的关键字代表的意义为:
public:公开的
protected:受保护的
private:私有的
我们可以这样定义方法:
class Car {
public function getName() {
return '汽车';
}
}
$car = new Car();
echo $car->getName();
使用关键字static修饰的,称之为静态方法,静态方法不需要实例化对象,可以通过类名直接调用,操作符为双冒号::。
class Car {
public static function getName() {
return '汽车';
}
}
echo Car::getName(); //结果为“汽车”
静态方法中,$this伪变量不允许使用。可以使用self,parent,static在内部调用静态方法与属性。
class Car {
private static $speed = 10;
public static function getSpeed() {
return self::$speed;
}
public static function speedUp() {
return self::$speed+=10;
}
}
class BigCar extends Car {
public static function start() {
parent::speedUp();
}
}
BigCar::start();
echo BigCar::getSpeed();