PHP 构造方法 __construct() 允许在实例化一个类之前先执行构造方法。
构造方法
构造方法是类中的一个特殊方法。当使用 new 操作符创建一个类的实例时,构造方法将会自动调用,其名称必须是 __construct() 。
在一个类中只能声明一个构造方法,而是只有在每次创建对象的时候都会去调用一次构造方法,不能主动的调用这个方法,所以通常用它执行一些有用的初始化任务。该方法无返回值。但是有形参,也可以传入实参
语法:
function __construct(arg1,arg2,...)
{
......
}
例子:
<?php
class Person {
var $name;
var $age;
//定义一个构造方法初始化赋值
function __construct($name, $age) {
$this->name=$name;
$this->age=$age;
}
function say() {
echo "我的名字叫:".$this->name."<br />";
echo "我的年龄是:".$this->age;
}
}
$p1=new Person("lightWay", 23);
$p1->say();
?>
运行该例子,输出:
我的名字叫:lightWay 的年龄是:23
在该例子中,通过构造方法对对象属性进行初始化赋值。
提示
PHP 不会在本类的构造方法中再自动的调用父类的构造方法。要执行父类的构造方法,需要在子类的构造方法中调用 parent::__construct() .
其他语言中,一般类的同名方法会认为是构造方法,php中也可以,但是,注意,在PHP中这个是一个不被赞成使用的方式.
php5里对两者都支持,如果两种构造方法同时存在的话,优先选择第一种.
一个类里面默认有一个不带参数为空的构造方法,一旦自定义了一个构造方法,就会覆盖默认的构造方法.
所以说一个类有且只有一个构造方法.
一个类只能有一个构造方法.(不能重载)
构造方法默认的访问修饰符为public.
350

被折叠的 条评论
为什么被折叠?



