C#的接口 (1)--接口慨述--定义接口

原创 2006年05月26日 10:59:00

接口慨述

接口(interface)用来定义一种程序的协定。
1 C#中的接口是独立于类来定义的。
2 接口和类都可以继承多个接口,一个接口可从一个或多个基接口继承。
3 而类可以继承一个基类,接口根本不能继承类。
4 一个接口定义一个只有抽象成员的引用类型。
5 接口可以定义方法、属性和索引

       接口与组件
在组件和组件之间、组件和客户之间都通过接口进行交互。一个组件可以实现多个组件接口,
而一个特定的组件接口也可以被多个组件来实现。

定义接口
接口是一组包含了函数型方法的数据结构

定义接口的一般形式:
[attributes][modifiers]interface identifier [:base-list]{interface-body}[;]
attributes:定义性信息
modifiers: 允许使用的修饰符有new和访问修饰符public protected internal private
identifier:对接口成员的定义
base-list:包含一个或多个显式基接口的列表,接口间由逗号分隔。
interface-body:对接口成员的定义。

例子1
C#接口的一个例
接口中包含一个成员方法Draw
interface IShape
 {
 void Draw ( ) ;
}

例子2
如果你从两个或者两个以上的接口派生,父接口的名字列表用逗号分隔,如下面的代码所示:
interface INewInterface: IParent1, IParent2 { }
 
例子3
接口 IInterface从两个基接口 IBase1 和 IBase2 继承:
interface IInterface:IBase1,IBase2
{
 void Method1();
void Method2();
}

例子4
接口可由类实现。实现的接口的标识符出现在类的基列表中。
class Class1: Iface1, Iface2 {
 // class 成员。
}

例子5
类的基列表同时包含基类和接口时,列表中首先出现的是基类。
class ClassA: BaseClass, Iface1, Iface2 {
 // class成员。
}


基接口
一个接口可以从零或多个接口继承,那些被称为这个接口的显式基接口。
当一个接口有比零多的显式基接口时,那么在接口的定义中的形式为,
接口标识符后面跟着由一个冒号":"和一个用逗号","分开的基接口标识符列表。

1 一个接口的显式基接口必须至少同接口本身一样可访问
2 一个接口直接或间接地从它自己继承是错误的
3 接口的基接口都是显式基接口,并且是它们的基接口
interface IControl {
 void Paint( ) ;
}
interface ITextBox: IControl {
 void SetText(string text) ;
}
interface IListBox: IControl {
 void SetItems(string[] items) ;
}
interface IComboBox: ITextBox, IListBox { }

  IComboBox 的基接口是IControl, ITextBox, 和 IlistBox。

4 一个接口继承它的基接口的所有成员
5 一个实现了接口的类或结构也隐含地实现了所有接口的基接口

C#接口慨述

 接口慨述   接口(interface)用来定义一种程序的协定。实现接口的类或者结构要与接口的定义严格一致。有了这个协定,就可以抛开编程语言的限制(理论上)。接口可以从多个基接口继承,而类或结构可以...
  • lincnl
  • lincnl
  • 2007年09月13日 10:21
  • 613

接口慨述1

  第一节 接口慨述  接口(interface)用来定义一种程序的协定。实现接口的类或者结构要与接口的定义严格一致。有了这个协定,就可以抛开编程语言的限制(理论上)。接口可以从多个基接口继承,而类或...
  • jfbao
  • jfbao
  • 2004年12月06日 22:46
  • 995

接口慨述1

  第一节 接口慨述  接口(interface)用来定义一种程序的协定。实现接口的类或者结构要与接口的定义严格一致。有了这个协定,就可以抛开编程语言的限制(理论上)。接口可以从多个基接口继承,而类或...
  • zhangqs_1981
  • zhangqs_1981
  • 2004年12月08日 08:58
  • 419

C#接口 第一节 接口慨述

第一节 接口慨述   接口(interface)用来定义一种程序的协定。实现接口的类或者结构要与接口的定义严格一致。有了这个协定,就可以抛开编程语言的限制(理论上)。接口可以从多个基接口继承,而类或结...
  • xiaoyaochengfeng
  • xiaoyaochengfeng
  • 2007年12月21日 12:43
  • 591

C#接口实现 - 接口慨述

第一节 接口慨述   接口(interface)用来定义一种程序的协定。实现接口的类或者结构要与接口的定义严格一致。有了这个协定,就可以抛开编程语言的限制(理论上)。接口可以从多个基接口继承,而类或结...
  • winddai
  • winddai
  • 2010年08月16日 15:09
  • 241

第一节 接口慨述

第一节 接口慨述       接口(interface)用来定义一种程序的协定。实现接口的类或者结构要与接口的定义严格一致。有了这个协定,就可以抛开编程语言的限制(理论上)。接口可以从多个基接口继承,...
  • jackymrcoco
  • jackymrcoco
  • 2006年06月22日 13:15
  • 710

接口慨述

第一节 接口慨述   接口(interface)用来定义一种程序的协定。实现接口的类或者结构要与接口的定义严格一致。有了这个协定,就可以抛开编程语言的限制(理论上)。接口可以从多个基接口继承,而类或结...
  • lovelulin
  • lovelulin
  • 2005年07月27日 02:25
  • 390

接口慨述2

接口与组件  接口描述了组件对外提供的服务。在组件和组件之间、组件和客户之间都通过接口进行交互。因此组件一旦发布,它只能通过预先定义的接口来提供合理的、一致的服务。这种接口定义之间的稳定性使客户应用开...
  • zhangqs_1981
  • zhangqs_1981
  • 2004年12月08日 09:00
  • 404

接口慨述2

接口与组件  接口描述了组件对外提供的服务。在组件和组件之间、组件和客户之间都通过接口进行交互。因此组件一旦发布,它只能通过预先定义的接口来提供合理的、一致的服务。这种接口定义之间的稳定性使客户应用开...
  • jfbao
  • jfbao
  • 2004年12月06日 22:47
  • 605

C#接口的定义、特点、实现和应用

C#接口(interface)的掌握对我们开发有什么作用呢?C#接口的使用能够使我们的程序有什么改进?那么我们首先我们来看看C#接口特点以及具体的实例使用分析: C#接口特点1:都是“虚的”不能...
  • ueszx
  • ueszx
  • 2016年04月13日 00:21
  • 1832
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C#的接口 (1)--接口慨述--定义接口
举报原因:
原因补充:

(最多只允许输入30个字)