zoukankan      html  css  js  c++  java
  • 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销毁资源   
  • 相关阅读:
    HDU 2116 Has the sum exceeded
    HDU 1233 还是畅通工程
    HDU 1234 开门人和关门人
    HDU 1283 最简单的计算机
    HDU 2552 三足鼎立
    HDU 1202 The calculation of GPA
    HDU 1248 寒冰王座
    HDU 1863 畅通工程
    HDU 1879 继续畅通工程
    颜色对话框CColorDialog,字体对话框CFontDialog使用实例
  • 原文地址:https://www.cnblogs.com/minigrasshopper/p/7743316.html
Copyright © 2011-2022 走看看