《【2017年整理】第12讲:类_构造方法(初始化)__construct_this_析构方法__destruct》由会员分享,可在线阅读,更多相关《【2017年整理】第12讲:类_构造方法(初始化)__construct_this_析构方法__destruct(3页珍藏版)》请在金锄头文库上搜索。
1、构造方法1.没有返回值2.在创建一个类的新对象时,系统会自动的调用该类的构造方法完成对该新对象的初始化。3.写法php4class Cat修饰符 function Cat(参数列表)/初始化操作php5(php5 兼容 php4 写法)class Cat修饰符 function _construct(参数列表)/初始化操作在 php5 中,一个类可以同时有 2 种形式的构造方法,_construct()和类名();优先选择_construct().this1.系统会给每个对象分配 this,代表当前对象.本质上也可理解为代表当前对象的地址。$this-属性名;2.对于不同对象,this 是变化
2、的;哪个对象有 this,就代表哪个对象。3.this 只能在 类定义 里面用,不能在 类定义 外面用。案例;$this-name=$iname;$this-age=$age;$p1=new person(宋江,33); /实例化的同时初始化了对象。echo $p1-name;?重要:_construct 是系统内置的,叫魔术方法,每次实例化类是会自动执行此方法。还有就是调用类的成员变量不需要在变量前面加 $ 比如:$this-school_name = $name; 正确默认构造方法1. 一个类只能有一个构造方法。 (不能重载)2.如果用户没有定义构造方法,系统会自动产生默认构造方法;如果有
3、了子定义构造方法,默认方法会被覆盖。3.默认的构造方法person()小结析构方法1. function _destruct()/释放资源操作2.案例name=$name;$this-age=$age;function _destruct()echo $this-name. 资源被销毁;$p1=new person(小明,12); / if $p1=null; $p1 会被先被销毁$p2=new person(小刚,12);?结论在 php5 中才有析构方法 function _destruct().析构方法会自动调用,前提是写入了析构方法。析构方法没有返回值的。一个类最多只有一个析构方法。析构方法主要用于释放资源(释放内存) ;不是销毁对象本身。析构方法调用的顺序是,先创建的对象后被销毁。析构函数什么时候会被调用 当程序退出时; 当一个对象成为垃圾对象的时候,该对象的析构方法也会被调用(所谓垃圾对象,就是没有任何变量在引用它)(一旦一个对象成为垃圾,析构函数就会立刻调用 )