php 面向对象

来源:互联网 发布:云计算技术 2016 编辑:程序博客网 时间:2024/06/05 17:04
1,魔术函数:
function __destruct() 脚本结束的时候调用。
function__get($k) 直接访问私有成员的时候,直接调用
function __get($pro){
return $this->$pro;
}


__set($k,$v) 设置私有成员的值时,直接调用
function __set($k,$v){
$this->$k = $v;
}
__isset($k) 用isset()判断对象的私有成员是否存在时调用
__unset($k) 用unset()删除对象的私有成员时调用


2,重载 :在子类中可以写父类同名的方法,参数,。
 子类调用父类的方法用父类的类名调用Father::say(); 或者用parent::say();
 子类的构造方法覆盖父类的构造方法,一定要在子类的构造方法上调用一下父类的构造方法。parent::__construct();
3,关键字:instanceof 用于检测当前对象的实力是否属于某一个类的   
  final 不定义常量,不能使用final修饰成员属性;可以修饰类、方法
  static 第一个用到类,类加载到内存的时候,静态成员就放到内存里了 self代表本类,在本类中调用静态属性.静态成员一旦被加载,只有脚本结束才释放。静态的方法中只能访问静态的属性。静态访问效率非常高。
  const
4,单例,单太设计模式
1,如果想让一个类,只能有一个对象,就要先让这个类,不能创建对象。将构造方法private
2, 可以在类的内存使用一个静态方法,来创建对象。
<?php
class Person{
static $obj = null;

private function __construct($name){

}
static function getOjb(){
//第一次调用,创建对象,以后直接调用第一次创建对象
if(is_null(self::$obj)){
self::$obj = new Person;
}
return self::$obj;
}
function say(){

}
}
$p = Person::getOjb();
$p->say();
?>
0 0