控制反转

何谓控制反转?

以前我们要使用一个对象,是这样的:

Class1 obj = new Class1();

面向接口编程后,是这样的:

//Class1 :IClass1
IClass1 obj = new Class1();

应用控制反转、依赖注入,是类似这样的: 

public class Test
{
    IClass1 obj;//类内只有接口
    public Test(IClass obj)
    {
        this.obj = obj;//你会给我一个啥实例?给点提示好不好?呵呵,给啥用啥,没得挑!
    }
    ...
}
//对象实例要靠类外面创建,再传递进来(注入)
Test test = new Test(new Class1());

这种使用对象实例方式,不经过类自身构造,无法控制,而只能听由外部或调用方安排,即所谓控制反转了。

 

 

 

 

 

 

 

 

 

 

***以上摘自他人,仅留存个人笔记使用

 

 

 

 


版权声明:本文为u012744024原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。