|
|
|
|
 |
基于Visual C#的接口基础教程
组件化程序设计方法继承并发展了面向对象的程序设计方法。它把对象技术应用于系统设计,对面向对象的程序设计的实现过程作了进一步的抽象。 接口是是组件化编程的一个重要内容,熟练掌握和使用接口将大大减轻编程的工作量,提高代码的可重用性,同时也能使你更深入的理解面向对象的思想。 | |
|
接口(interface)用来定义一种程序的协定。实现接口的类或者结构要与接口的定义严格一致。有了这个协定,就可以抛开编程语言的限制(理论上)。接口可以从多个基接口继承,而类或结构可以实现多个接口…… |
从技术上讲,接口是一组包含了函数型方法的数据结构。通过这组数据结构,客户代码可以调用组件对象的功能…… |
接口可以包含一个和多个成员,这些成员可以是方法、属性、索引指示器和事件,但不能是常量、域、操作符、构造函数或析构函数,而且不能包含任何静态成员…… |
对接口方法的调用和采用索引指示器访问的规则与类中的情况也是相同的。如果底层成员的命名与继承而来的高层成员一致,那么底层成员将覆盖同名的高层成员…… |
为了实现接口,类可以定义显式接口成员执行体。 显式接口成员执行体可以是一个方法、一个属性、一个事件或者是一个索引指示器的定义,定义与该成员对应的全权名应保持一致…… |
为了支持 COM和.Net,C# 包含一种称为属性的独特语言特性。一个属性实际上就是一个 C# 类,它通过修饰源代码来提供元信息。属性使 C# 能够支持特定的技术,如 COM 和 .Net,而不会干扰语言规范本身…… |
C#作为一个面向对象的语言,必然也会引入抽象类这一概念。通过接口,可以指定组件必须实现的方法,但不实际指定如何实现方法。抽象类使您可以创建行为的定义,同时提供用于继承类的一些公共实现。对于在组件中实现多态行为,接口和抽象类都是很有用的工具…… |
接口是组件之间的协议,描述了组件对外提供的服务。从技术上讲接口是一组包含了函数型方法的数据结构。通过这组数据结构,客户代码可以调用组件对象的功能。接口可以从父接口中继承。接口的继承首先是说明性继承,不是实现性继承,它的实现需要通过类或结构来实现;其次接口继承可以是多继承。 接口包含的成员有方法、属性、索引指示器和事件。由于接口允许多继承,在可能发生二义性的地方可以采用全权名来避免。 可以用类来实现接口。在类中定位接口成员的实现称之为接口映射。类必须为接口的所有成员提供具体的实现,包括接口中显式定义的成员,以及接口从父接口中继承而来的成员。同样,在对接口的实现过程中可以采用显式接口成员执行体来避免产生二义性。 派生类可以对基类已经实现的接口进行重实现。 抽象类也可以实现接口,但接口成员必须映射到抽象类的抽象成员。抽象类的派生类如果是非抽象类,则必须通过方法重载来实现接口成员。 | |
|