3.8C#语言的接口类型(Interfaces Types)

接口定义了可由类和结构实现的协定。 接口可以包含方法、属性、事件和索引器。 接口通常不提供所定义成员的实现,仅指定必须由实现接口的类或结构提供的成员。

interface  接口名称
{
    接口成员;
}

接口的实现

class  类名 : 接口名
{
    //类中的成员以及实现接口中的成员
}

接口可以采用 多重继承。 在以下示例中,接口 IComboBox 同时继承自 ITextBox 和 IListBox

interface IControl
{
    void Paint();
}

interface ITextBox : IControl
{
    void SetText(string text);
}

interface IListBox : IControl
{
    void SetItems(string[] items);
}

interface IComboBox : ITextBox, IListBox { }

类和结构可以实现多个接口。 在以下示例中,类 EditBox 同时实现 IControl 和 IDataBound

interface IDataBound
{
    void Bind(Binder b);
}

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

当类或结构实现特定接口时,此类或结构的实例可以隐式转换成相应的接口类型。 例如

EditBox editBox = new EditBox();
IControl control = editBox;
IDataBound dataBound = editBox;

原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/basic/csharp/4032.html

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注