何谓控制反转?
以前我们要使用一个对象,是这样的:
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版权协议,转载请附上原文出处链接和本声明。