日期:2014-05-19  浏览次数:20967 次

C#中的接口有一问
在看例子时,看到这样的情况:
        public   interface   IDbConnection   :   IDisposable
        {
                ..........
                IDbTransaction   BeginTransaction();
                IDbTransaction   BeginTransaction(IsolationLevel   il);
                ..........
        }
这里是接口里面定义了接口,想不明白了。。。

------解决方案--------------------
一个方法返回一个继承并实现了这个接口的对象
------解决方案--------------------
接口是一种抽象
如果要你的程序有很好复用的话
那么你就需要面向接口(抽象)编程

这种接口中返回接口
完全是在抽象的层面考虑问题,脱离具体实现
这样编出来的程序有较好的复用性

真正实现的时候,这些接口中所指向的是
实现了这些接口的具体类
而这些具体类是可以替换的
只要实现这个接口

------------------------------------------------ .^_^. ------
顺便提及一句
为什么针对抽象编程比较好
因为抽象的东西比较稳定,
建立在稳定基础的上面的东西当然比较好
因此你要确定的你抽象是相对稳定

现实中就是这样的:)
具体苹果会容易烂掉,
但是苹果这个抽象概念延续的几前年都很稳定