<?PHP
class Girl
{
public function work()
{
return '会做饭';
}
public function hobby()
{
return '爱逛街';
}
}
//1.构造方法中实现
class boy1
{
private $girl = null;
public function __construct(Girl $girl)
{
$this->girl = $girl;
}
public function getInfo()
{
return '我的女朋友'.$this->girl->work();
}
}
$girl = new Girl;
$boy1 = new boy1($girl);
echo $boy1->getInfo();
echo'<hr/>';
//2.用普通方法实现
class Boy2
{
public function buy(Girl $girl)
{
return '我的女朋友'.$girl->hobby();
}
}
$girl = new Girl;
$boy2 = new Boy2;
echo $boy2->buy($girl);
echo'<hr/>';
优势:将对象标准化创建 而不再到处new 避免在一个类中直接实例化另一个类 高度耦合 相互以来非常不好