static 关键字 数组
1.变量 函数
初始化时 能够初始化为 基本常量 如数字,字符 ,数组等 this
ex: static $a = 1 , static $a = array() 等 对象
但不能够初始化为变量,对象 ,表达式 ,函数返回值等 继承
ex: $b = 1; static $a = $b , static $a = new obj() 等作用域
1.变量:static 能够赋予任何值 ,与通常变量一致 class
类名::变量名 ,self(parent)::变量名 , static::变量名变量
注意 :不能够使用 $this -> 变量名 或者 $obj -> 变量名 方法
类名::方法名 , self(parent):: 方法名 , static::方法名 , $this -> 方法名 或者 $obj -> 方法名 margin
静态方法 内不能够使用 $this 调用其余非静态方法 或者其余成员变量。
但能够新建一个对象而后调用其方法或者成员变量。
ex: $a = new ObjA(); $a -> a;
父类的静态变量 在子类中不可修改成其余非静态变量
ex: class A {public static $a = 1} class A extends B{ public $a = 1}
但能够从新初始化
ex class A {public static $a = 1} class A extends B{ public static $a = 0}