php中的构造方法与析构方法

        构造方法是类中的一个特殊方法。当使用 new 操作符创建一个类的实例时,构造方法将会自动调用,其名称必须是 __construct()。所以通常用它执行一些有用的初始化任务。该方法无返回值。
如果子类中定义了构造函数则不会暗中调用其父类的构造函数。要执行父类的构造函数,需要在子类的构造函数中调用parent::__construct()。

       与构造方法对应的就是析构方法,析构方法会在某个对象的所有引用都被删除或者当对象被显式销毁之前执行的一些操作或者功能。析构函数不能带有任何参数,其名称必须是__destruct() 。
同样,如果子类中定义了析构函数则不会暗中调用其父类的析构函数。要执行父类的析构函数,需要在子类的析构函数中调用parent::__destruct()。

注意:在析构函数中抛出一个异常会导致致命错误。
<?php

class Construct{
 
    protected$a;
 
    protected$b;
 
    function__construct($a,$b){  //定义构造函数
 
          $this->a=$a;
 
          $this->b=$b;
 
    }
 
    function__destruct(){  //重新定义为初始值
 
          $result=0;
 
          echo '恢复乘积的初始值:'.$result; 
 
    }
}

class son extends construct{
 
    private$c;
 
    function__construct($c){
 
          parent::__construct(6,10);      //调用父类的构造方法,使用方法:parent::__construct();有参数加参数
 
          $this->c=$c;
 
    }
 
    functionshow(){
 
          $result=$this->a*$this->b*$this->c;
 
          print'abc的乘积是:'.$result.'&nbsp;';
 
       
 
    function__destruct(){
 
          parent::__destruct();  //调用父类的析构函数,使用方式:parent::__destruct();
 
    }
}

$test=new son(12); 
  //实例化对象
$test->show(); 
  //abc的乘积是:720  恢复乘积的初始值:0

?>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值