Php面向对象--构造函数与析构函数

 

每当实例化一个类对象时,都会自动调用这个与类同名的函数,使对象具有与生俱来的一些特征。在PHP5中,则使用__construct()来命名构造函数,而不再是与类同名,这样做的好处是可以使构造函数独立于类名,当类名改变时,不需要在相应的去修改构造函数的名称。

 

与构造函数相反,在PHP5中,可以定义一个名为__destruct()的函数,称之为析构函数,PHP将在对象在内存中被销毁前调用析构函数,使对象在彻底消失之前完成一些工作。对象在销毁一般可以通过赋值为null实现。

 

 

eg:

<?php
/*
 * Created on 2009-11-18
 *
 * To change the template for this generated file go to
 * Window - Preferences - PHPeclipse - PHP - Code Templates
 */
 class student{
  //属性
  private $no;
  private $name;
  private $gender;
  private $age;
  
  private static $count=0;
  function __construct($pname)
  {
   $this->name = $pname;
   self::$count++;
  }
  
  function __destruct()
  {
   self::$count--;
  }
  
  static function get_count()
  {
   return self::$count;
  }
 }
 
 $s1=new student("Tom");
 print(student::get_count());
 
 $s2=new student("jerry");
 print(student::get_count());
 
 $s1=NULL;
 print(student::get_count());
 
 $s2=NULL;
 print(student::get_count());
?>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值