PHP类与对象 this 构造方法 析构方法

作者猫斯基 2014-01-18 89 人读过

最新文章

PHP对象的两个主要特性:

1、对象的行为。对对象施加操作。如开关机。

2、对象的状态。当施加方法时,对象如何响应;如:电脑的外形、尺寸、颜色等。

在类的成员变量前,一定要有修饰词。

[修饰词] class 类名 {
	[成员属性]
	[成员方法]
}
[修饰词] class 类名 [extends 父类] [implements 接口1,接口2...] {
	[成员属性]
	[成员方法]
}

this的使用

/**
 * @url https://maosiji.com
 属性:
	性别:女
	年龄:18
	身高:168
	眼睛:大
行为:
	做饭
	做家务
	不生气
 */
class wifeClass {
	// 成员属性
	var $name = 'Nox';
	var $age = '18';
	var $sex = '女';
	var $height = '168cm';
	var $eye = 'big';
	// 成员方法
	function doFan( $rou, $cai ) {
		echo "{$this->name} 启动做饭功能<br />";
		$this->doWu();
	}
	function doWu() {
		echo "{$this->name} 启动做家务功能<br />";
	}
}
$wife1 = new wifeClass();
echo $wife1->name = 'Nox1';
echo '<br />-----<br />';
$wife2 = new wifeClass;
$wife2->doFan( '鸡肉', '蘑菇' );
/*
打印结果:
Nox1
-----
Nox 启动做饭功能
Nox 启动做家务功能
*/

构造方法

对象创建完成后,第一个自动调用的方法。

__construct()表示。注意:construct前面两个“_”。

作用:给对象中的成员赋初始值。

class wifeClass {
	// 成员属性
	var $name;
	var $age;
	var $sex;
	function __construct( $name, $age, $sex='女' ) {
		echo "构造方法<br />";
		$this->name = $name;
		$this->age = $age;
		$this->sex = $sex;
	}
	// 成员方法
	function doFan( $rou, $cai ) {
		echo "{$this->name} 启动做饭功能<br />";
		$this->doWu();
	}
	function doWu() {
		echo "{$this->name} 启动做家务功能<br />";
	}
}
$wife = new wifeClass('Nox', '18');
$wife->doFan( '鸡肉', '蘑菇' );
/*
打印结果:
构造方法
Nox 启动做饭功能
Nox 启动做家务功能
*/

析构方法

对象失去引用前调用的方法。

__destruct() 没有参数。一般做资源的释放。

/**
 * @url https://maosiji.com
ds
 */
class wifeClass {
	// 成员属性
	var $name;
	var $age;
	var $sex;
	function __construct( $name, $age, $sex='女' ) {
		echo "构造方法<br />";
		$this->name = $name;
		$this->age = $age;
		$this->sex = $sex;
	}
	// 成员方法
	function doFan( $rou, $cai ) {
		echo "{$this->name} 启动做饭功能<br />";
		$this->doWu();
	}
	function doWu() {
		echo "{$this->name} 启动做家务功能<br />";
	}
	function __destruct() {
		echo "{$this->name} 再见!";
	}
}
$wife = new wifeClass('Nox', '18');
$wife->doFan( '鸡肉', '蘑菇' );
$wife2 = new wifeClass('Nox2', '19');
$wife2->doWu( );
/*
打印结果:
构造方法
Nox 启动做饭功能
Nox 启动做家务功能
构造方法
Nox2 启动做家务功能
Nox2 再见!Nox 再见!
*/

本文由 猫斯基 原创发布。

著作权均归用户本人所有。独家文章转载,请联系本站管理员。获得授权后,须注明本文地址! 本文地址:https://maosiji.com/php/php-15.html