PHP自学之路----构造方法,析构方法

构造方法:

 1、   一个类只能有一个构造方法! 

2、构造方法没有返回值。

3、构造方法的作用是对新对象的初始化,但并不能创造对象本来

4、在创建构造方法后,系统将自动调用构造方法!

<?php
    class person{
         public $name;
		 public $age;
          //构造方法 (没有返回值,直接调用!)
		 public function __construct($name,$age){
			 //this 是一个引用对象本身,相对于当前对象的地址!
             $this->age=$age;
			 $this->name=$name;
             echo "这是一个构造方法 <br/>";
		 }
		 //构造方法2:(php4中方法)
		 public function person(){

             echo"OK<br/>";
		 }
     }
         //两种构造方法同时存在时,优先输出方法1;
		 $po=new person("aaa",20);
		 echo $po->name.$po->age;
?>

 析构方法:

析构方法主要作用是用来释放资源!不如释放数据库的链接,或图片链接或销毁某个对象等等,主要特点如下:

1、 系统自动调用。

2、 主要用于释放资源

3、析构函数调用的顺序,先创建的对象,先被销毁(最先创建的会被压栈) 

4、当一个对象成为垃圾对象的时候,该析构函数会被立即调用。进程结束后退出! 所谓垃圾对象就是指没有任务变量再引用它了,一旦一个对象成为垃圾对象,析构函数会被立即调用!

<?php
    class person{
         public $name;
		 public $age;
          //构造方法 (没有返回值,直接调用!)
		 public function __construct($name,$age){
             $this->age=$age;
			 $this->name=$name;
             echo "这是一个构造方法 <br/>";
		 }
		 //析构方法
		 public function __destruct(){
             echo $this->name."销毁资源";
		 }
     }
         //两种构造方法同时存在时,优先输出方法1;
		 $po=new person("aaaa",20);
		 $po1=new person("bbbb",20);
		 $po2=new person("cccc",20);


?>

当再
 $po=new person("aaaa",20);后面增加 $po=null;
也就是我们来分析下第4中情况,垃圾回收机制!当资源成为垃圾对象的处理!看下面的对比:左边是上面的代码,右边是增加那个内容!
PHP自学之路----构造方法,析构方法_第1张图片

 


  

你可能感兴趣的:(构造方法,析构方法)