php面向对象编程之构造方法__construct()
php中构造方法是对象创建完成后第一个被对象自动调用的方法。在每个类中都有一个构造方法,如果没有显示地声明它,那么类中都会默认存在一个没有参数且内容为空的构造方法。
构造方法的作用
通常构造方法被用来执行一些有用的初始化任务,如对成员属性在创建对象时赋予初始值。
构造方法的在类中的声明格式
function __constrct([参数列表]){
方法体//通常用来对成员属性进行初始化赋值
}
在类中声明构造方法需要注意的事项
1、在同一个类中只能声明一个构造方法,原因是,PHP不支持构造函数重载。
2、构造方法名称是以两个下画线开始的__construct()
现在就来看一个例子:
class Person{
public $name;
public $age;
public $sex;
public function __construct($name="",$sex="男",$age=27){ //显示声明一个构造方法且带参数
$this->name=$name;
$this->sex=$sex;
$this->age=$age;
}
public function say(){
echo "我叫:".$this->name.",性别:".$this->sex.",年龄:".$this->age;
}
}?>
创建对象$Person1且不带任参数$Person1= new Person();echo $Person1->say();//输出:我叫:,性别:男,年龄:27
创建对象$Person2且带参数"张三"
$Person2= new Person("张三");echo $Person2->say();//输出:我叫:张三,性别:男,年龄:27
创建对象$Person3且带三个参数
$Person3= new Person("李四","男",25);echo $Person3->say();//输出:我叫:李四,性别:男,年龄:25