摘要: 依赖注入: 就是避免在本类中直接实例化其他类的方法,将其他类实例化的对象,当做参数传入到本类的方法中(构造方法,普通方法)(需要限定下类型) 构造方法实现时,需要创建一个属性来存储这个外部类的对象,然后在实例化本类时将外部类传入构造方法中 普通方法实现依赖注入
依赖注入: 就是避免在本类中直接实例化其他类的方法,将其他类实例化的对象,当做参数传入到本类的方法中(构造方法,普通方法)(需要限定下类型)
构造方法实现时,需要创建一个属性来存储这个外部类的对象,然后在实例化本类时将外部类传入构造方法中
普通方法实现依赖注入,则在普通方法中传入外部类的实例对象.
如下操作:
1.构造方法实现
//创建一个Hero类
class Hero
{
public function fight(){
return '战斗!';
}
}
//创建一个People类
class People
{
//构造方法实现
//创建一个属性存储Hero类
private $hero = null;
//构造方法
public function __construct(Hero $hero)
{
//存储到属性中
$this->hero = $hero;
}
public function tel(){
//调用外部类的方法
return '人们找Hero'.$this->hero->fight();
}
}
//实例化Hero类
$hero = new Hero;
//将Hero对象传入People类中构造方法
$people = new People($hero);
echo $people->tel(); 2.普通方法中实现
//创建一个Hero类
class Hero
{
public function fight(){
return '战斗!';
}
}
//创建一个People类
class People
{
//传入外部类
public function tel(Hero $hero){
//调用外部类的方法
return '人们找Hero'.$hero->fight();
}
}
//实例化Hero类
$hero = new Hero;
//将Hero对象传入People类中构造方法
$people = new People;
echo $people->tel($hero);
批改老师:天蓬老师批改时间:2018-12-13 10:00:23
老师总结:依赖注入,是一种设计解耦的设计模式, 在面向对象编程中,很常用