Answers
adodotnet() ( ) 信誉:100 Blog
已经说得很好了,我再说一下,接口做用主要一点就是用来规范程序。另一个比较灵活的适用就是 可以这样:ITest {void Hello();} <]--- Test1{public void Hello{Console.WriteLine( "test1 ");}}, Test2{public void Hello {Console.WriteLine( "test2 ")}} (Test1和Test2分别inherit ITest)
现有一个
ClassA {
public ITest GetTest(ITest itest) {
...
return itest;
}
}
...
ClassA classA = new ClassA();
ITest itest = classA.GetTest(new Test1());
itest.Hello();
itest = classA.GetTest(new Test2());
itest.Hello();
楼主试试吧,这样就可以很灵活的写代码了。
用不上的地方也确实没必要用。
但确实一开始编C#程序,就算是最简单的,那后面也是有好多的接口参与着,不是吗?
笼统的讲,我想用同一种方式使用不同派系的功能时用接口。
IMyInterface interface = class1;
interface.Go(); //执行Class1的Go
下一时刻 interface = class2;
inteface.Go(); //执行Class2的Go
再下一个时刻...
一个interface就可以执行各种类的方法。我甚至可以在代码里先
interface.Go(); 没必要预先知道我要执行谁的Go
只要哪个在实现了IMyInterface,还有接口定义的Go方法,那么我就能执行。我预先不管你是哪家来的,只要你实现了IMyInterface,那你就能被我调用。
。。。。