• php面向对象的构造方法与析构方法


    构造方法与析构方法是对象中的两个特殊方法,即对象的生命周期。

    构造方法:对象创建完成后第一个被对象自动调用的方法。

    析构方法:对象在销毁之前最后一个被对象自动调用的方法。

    所以通常使用构造方法完成对象的初始化工作,使用析构方法完成对象在销毁前的清理工作。

    构造方法:

    ①一个类只能有一个构造方法!

    ②构造方法没有返回值!

    ③构造方法的作用是初始化新对象,在创建构造方法后,系统将自动调用!

    复制代码
    class person{  
      public $name;  
      public $age;  
      //构造方法1 (php4、php5)  
      public function __construct($name,$age){  
        $this->age=$age;  
        $this->name=$name;  
      }  
      //构造方法2:(php4)  
      public function person($name,$age){
         $this->age=$age;  
        $this->name=$name;
      } 
    }  
    //两种构造方法同时存在时,优先输出方法1; 
    $po=new person("aaa",20);  
    echo $po->name.$po->age;  
    复制代码

    析构方法:

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

    ①系统自动调用。

    ②主要用于释放资源。

    ③析构函数调用的顺序:先进栈后出栈。

    ④当一个对象成为垃圾对象的时候,该析构函数会被立即调用。 所谓垃圾对象是指没有变量再引用它了,一旦一个对象成为垃圾对象,析构函数会被立即调用!

    复制代码
    class person{  
        public $name;  
        public $age;  
        //构造方法 (没有返回值,直接调用!)  
        public function __construct($name,$age){  
            $this->age=$age;  
            $this->name=$name;   
        }  
        //析构方法  
        public function __destruct(){  
            echo $this->name."销毁资源";  
        }  
    }
       
    $po1=new person("moon",20);  
    $po2=new person("sky",20);
    
    //先输出sky销毁资源,再输出moon销毁资源   
  • 相关阅读:
    ASP.NET MVC自定义Module记录管道事件执行顺序
    Pro ASP.NET MVC 5 Platform-第三章 ASP.NET 生命周期
    C#基础-反射
    C#7语法快速参考-第一章 Hello World
    两张趣图助你理解 HTTP 状态码!
    dev listbox使用
    aspose导出数据
    dev chart使用
    linq多个条件
    json返回数据多个是数组,单个就不是处理方案
  • 原文地址:https://www.cnblogs.com/lyzaidxh/p/12772158.html
Copyright © 2020-2023  润新知