依赖注入小案例

Original 2019-03-23 14:50:39 306
abstract:<?php /**  * Created by PhpStorm.  * User: hello word!  * Date: 2019/3/19  * Time: 20:27  */ //依赖注入 ; 把当前依赖的对象以参
<?php
/**
 * Created by PhpStorm.
 * User: hello word!
 * Date: 2019/3/19
 * Time: 20:27
 */
//依赖注入 ; 把当前依赖的对象以参数的方式注入到当前类中 ;目的是为了防止直接在类中实例化类 的高耦合
class Girl{
    public function can_do(){
        return '会做饭';
    }
}
$girl= new girl;
class Me{
    //在me类中调用girl类,前提是必须有个girl类
    //1构造方法实现依赖注入 需要一个存放对象的容器
    private $cont=null;
    public function __construct(Girl $girl)
    {
        $this->cont=$girl;
    }
    public function me_do(){
        return '我的女朋友会'.$this->cont->can_do();
    }
}
$girls = new Me($girl);
echo $girls->me_do();
//普通方法实现依赖注入
class Meto{
    public function meto_do(Girl $girl){  //前面限定必须是什么的实例
        return '我的女票也是0会'.$girl->can_do();
    }
}
echo '<hr>';
$haha = new Meto;
echo $haha->meto_do($girl);

在类外部实例化的优势是 代码的耦合度很低,以后出现变动只需要修改少量的代码

Correcting teacher:查无此人Correction time:2019-03-23 15:17:11
Teacher's summary:完成的不错。依赖注入现在很多编程语言里都有了,学会一种语言,其他的就会想通。继续加油

Release Notes

Popular Entries