C#中如何利用类实现一个接口

网友投稿 219 2024-02-03


C#中如何利用类实现一个接口

本文主要介绍"C#中如何利用类实现一个接口",希望能够解决您遇到有关问题,下面我们一起来看这篇 "C#中如何利用类实现一个接口" 文章。

C#类实现接口

前面我们已经说过,接口定义不包括方法的实现部分。接口可以通过类或结构来实现。我们主要讲述通过类来实现接口。用类来实现接口时,接口的名称必须包含在类定义中的基类列表中。

下面的例子给出了C#类实现接口的例子。其中ISequence 为一个队列接口,提供了向队列尾部添加对象的成员方法Add( ),IRing 为一个循环表接口,提供了向环中插入对象的方法Insert(object obj),方法返回插入的位置。类RingSquence 实现了接口ISequence 和接口IRing。

using System ;  interface ISequence {  object Add( ) ;  }  interface ISequence {  object Add( ) ;  }  interface IRing {  int Insert(object obj) ;  }  class RingSequence: ISequence, IRing  {  public object Add( ) {…}  public int Insert(object obj) {…}  }

如果类实现了某个接口,类也隐式地继承了该接口的所有父接口,不管这些父接口有没有在类定义的基类表中列出。看下面的例子:

using System ;  interface IControl {  void Paint( );  }  interface ITextBox: IControl {  void SetText(string text);  }  interface IListBox: IControl {  void SetItems(string[] items);  }  interface IComboBox: ITextBox, IListBox { }

这里, 接口IcomboBox继承了ItextBox和IlistBox。类TextBox不仅实现了接口ITextBox,还实现了接口ITextBox 的父接口IControl。

前面我们已经看到,一个类可以实现多个接口。再看下面的例子:

interface IDataBound {  void Bind(Binder b);  }  public class EditBox: Control, IControl, IDataBound {  public void Paint( );  public void Bind(Binder b) {...}  }

类EditBox从类Control中派生并且实现了Icontrol和IdataBound。在前面的例子中接口Icontrol中的Paint方法和IdataBound接口中的Bind方法都用类EditBox中的公共成员实现。C#提供一种实现这些方法的可选择的途径,这样可以使执行这些的类避免把这些成员设定为公共的。C#类实现接口成员可以用有效的名称。

编程技术 和 程序设计

本文主要介绍"C#中如何过滤换行符",希望能够解决您遇到有关问题,下面我们一起来看这篇 "C#中如何过滤换行符" 文章。C#换行符都去掉就用下面的正则:textStr = Regex.Replace(textStr,  ...


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:.NET接口有什么用
下一篇:php接口中的interface如何使用
相关文章

 发表评论

暂时没有评论,来抢沙发吧~