|
成员属性需要声明 如果不知道就用var/public
private function __get($val){//直接获取私用成员属性值时自动调用 __isset __unset 子类重载父类 使用 父类名::方法名或 parent::方法名覆盖 子类中使用构造方法 需要先调用父类的构造方法parent::__construct
return $this->$val;
}
private function __set($name,$val){//设置私用属性时自动调用
$this->$name=$val;
}
final 只能修饰方法和类 让其不能被继承
static 只能修饰方法和属性 不能修饰类 类名::成员属性 或self::成员属性 调用静态方法不需要创建对象 直接类名::静态方法 静态方法不能访问非静态成员
const 只能修饰成员属性 在类中定义常量 用self::常量 调用 在声明时给初值 const ACC="xxx";
function __call(方法名,参数){}类的方法不存在的时候调用
<?php
/**
* 类中方法不存在 __call会被自动调用
* @param $name函数名 $arguments函数参数 $arguments[0]第一个参数
*/
class foo {
function __call($name,$arguments) {
print("Did you call me? I'm $name!");
}
}
$x = new foo();
$x->doStuff();
$x->fancy_stuff();
?>
__autoload()函数 定义在类之外
$p=new Oneclass();
function __autoload($className){ //调用类时自动加载
include './'.$className.'.class.php'';
} |
|
|