类的特性
上一节介绍了抽象类、匿名类、普通类等的基本特性和简单应用,这一节主要介绍类的特性。
类的属性
类的成员变量叫作属性,属性可声明为 private
、public
、protected
三种访问级别。
类的成员方法中,可以通过 “$this->”
访问非静态、非常量属性;通过 “self::”
来访问常量及静态属性。接下来逐步介绍各个属性的异同。
-
普通属性:普通属性指的是无
static
、const
声明的属性。普通属性通过“->”
访问,类实例化成对象后,会把这些属性复制到对象中。 -
静态属性:静态属性指的是通过关键字
static
声明的属性,访问时通过“::”
调用。 -
常量属性:常量属性指的是通过关键字
const
声明的属性,常量属性不能被修改,访问时通过“::”
调用。 -
动态属性:动态属性指的是在程序运行中产生的属性,不是在类中声明的。如以下代码示例:
class D{
public function set($param)
{
$this->b = $param ; //设置动态属性
}
}
$obj = new D();
$obj->set('param_str');
var_dump($obj->b);