首页 > 其他 > 详细

什么是控制反转

时间:2015-03-24 12:41:37      阅读:260      评论:0      收藏:0      [点我收藏+]

控制反转就是关于一个对象如何获取他所依赖的对象的引用,这个责任的反转。这也是多态的体现。

  好比去超市买东西,从我自己拿需要的物品变成了服务员给我。

控制反转包括依赖注入和依赖查找,这次我先理解一下依赖注入:

 

 1 using System;
 2 
 3 namespace 多态
 4 {
 5     class MainClass
 6     {
 7         public static void Main (string[] args)
 8         {
 9             IPerson student = new Student ();
10             student.run ();
11             IPerson teacher = new Teacher();
12             teacher.run ();
13             Console.Read ();
14         }
15     }
16 
17     public interface IPerson
18     {
19         void run();
20     }
21 
22     public class Student:IPerson
23     {
24         public void run()
25         {
26             Console.WriteLine ("Student Write!");
27         }
28     }
29 
30     public class Teacher:IPerson
31     {
32         public void run()
33         {
34             Console.WriteLine ("Teacher Write!");
35         }
36     }
37 }

 

      如代码所示:IPerson接口可以实例Student类或者Teacher类,而不像以前那样Student s = new Student();这样,如果下次想要实例Teacher还要去代码中修改,再编译,太麻烦,这样IPerson p = new *** 这个***是从配置文件(xml一类的文件)中读取出来,然后运用反射的方法动态取到要调用的类(或DLL文件),打到方便的目的。这就是我所理解的依赖注入。

                                                              --Ones

 

什么是控制反转

原文:http://www.cnblogs.com/ones/p/4362177.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!