如题所述
构造函数不是必须的,当一个类被实例化的时候构造函数(如果有)会被调用,它具体做什么视需求而定。
例如,为边长为4的正方形声明一个类,那么它可能不需要构造函数,如
class demo { protected length = 4;}而为正方形声明一个类的时候,那么它需要构造函数来指定正方形实例的边长,如
class demo { protected $length = false; public function __construct($length) { $this->_length = $length; }}你问题中的代码不恰当,虽然构造函数中不禁止使用return语句,但是return语句此时没有任何作用,只会引起误会。
例如,为边长为4的正方形声明一个类,那么它可能不需要构造函数,如
class demo { protected length = 4;}而为正方形声明一个类的时候,那么它需要构造函数来指定正方形实例的边长,如
class demo { protected $length = false; public function __construct($length) { $this->_length = $length; }}你问题中的代码不恰当,虽然构造函数中不禁止使用return语句,但是return语句此时没有任何作用,只会引起误会。
温馨提示:答案为网友推荐,仅供参考
第1个回答 推荐于2018-03-23
你好,完全可以的.请看下面代码:
class a{
public function __construct(){
echo '这是a类的构造方法';
}
}
class b{
public $c;
public function __construct(){
$this->c=new a();
}
}
$a=new b();本回答被提问者和网友采纳
class a{
public function __construct(){
echo '这是a类的构造方法';
}
}
class b{
public $c;
public function __construct(){
$this->c=new a();
}
}
$a=new b();本回答被提问者和网友采纳