3.5C#引用类型之接口(Interface)

接口声明

接口包含一组非抽象classstruct必须实现的相关功能的定义。

interface I接口名<类型参数> {
    //接口体
}

继承

接口 可以继承自多个基接口。

interface 接口: 基接口1[, 基接口N]

实现

类 或 结构 可以实现多个接口,实现接口的类或结构必须实现其所有未提供默认实现的成员并匹配接口中的成员签名。

接口可以为其部分或全部成员定义默认实现。实现接口的类或结构不必实现具有默认实现的成员。private 成员必须默认实现

//类实现接口
class : 接口1[, 接口N] {
    //类体
}

//结构实现接口
struct : 接口1[, 接口N] {
    //结构体
}

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

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/csharp/csharplang/7875.html

(0)
上一篇 2021年3月5日 20:00
下一篇 2021年3月6日 00:42

相关推荐

  • 1.7C#语言的异常(Exception)语句

    异常派生自System.Exception类。 throw 使用 throw 关键字,程序可以显式生成异常。 try-catch try…catch 语句用于捕获在代码块执行期间发生的异常。 try-finally try…finally 语句用于指定始终执行的最终代码,无论…

    C#语言教程 2021年1月7日
    01320
  • 2.1C#语言的变量(Variable)

    1.变量声明和初始化 2.变量分类 x 是一个静态变量, y 它是一个实例变量,a 是一个值参数,b 是一个引用参数,c 是一个输出参数,v[0] 是一个数组元素,i 是一个局部变量。 2.1成员变量 名称 修饰符 访问 静态变量 用 static 修饰 类.静态变量 实例变量 无 sta…

    C#语言教程 2021年2月1日
    01460
  • 3.3C#值类型之枚举(Enum)

    枚举声明 所有枚举继承自 System.Enum类(继承自 System.ValueType)。 枚举类型 定义了一组常量值。 每个 enum 类型都有一个基础类型(必须是八种整型类型之一)。默认情况下,枚举常量的基础类型为 int,它们从 0 开始,并按定义常量顺序递增 1。 …

    C#语言教程 2021年3月3日
    01450

发表评论

登录后才能评论