💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
### 构造方法: 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中情况,垃圾回收机制!当资源成为垃圾对象的处理!看下面的对比:左边是上面的代码,右边是增加那个内容! ![](https://box.kancloud.cn/2016-06-03_5750fd8e1d430.jpg)