为什么使用接口
当我们想给一个类提供附加的功能时,由于C#是一种单继承的语言,(一般情况下,那个个具体类可能已经有了一个超类),解决是给它的父类加父类,或者给它父类的父类加父类,只到移动到类等级结构的最顶端。这样一来,对一个具体类的可插入性的设计,就变成了对整个等级结构中所有类的修改。
而接口是可插入性的保证。在一个等级结构中的任何一个类都可以实现一个接口,接口提供了关联以及方法调用上的可插入性,软件系统的规模越大,生命周期越长,接口使得软件系统的灵活性和可扩展性,可插入性方面得到保证。这个接口会影响到此类的所有子类,但不会影响到此类的任何超类。此类将不得不实现这个接口所规定的方 法,而其子类可以从此类自动继承这些方法,当然也可以选择置换掉所有的这些方法,或者其中的某一些方法,这时候,这些子类具有了可插入性(并且可以用这个 接口类型装载,传递实现了他的所有子类即多态的使用)。
综上,接口的作用就是保证系统中类的功能可插入性,可扩展性。 |
|