首页 > 软件操作教程 > 编程开发 > C#
题目内容

C# 在类中实现接口

题目答案

实现接口的类必须包含该接口所有成员的实现代码,且必须匹配指定的签名(包括匹配指定的get和set块),并且必须是公共的。例如:

public interface IMylnterface 

{

    void DoSomething(); 

    void DoSomethingElse();

}

public class MyClass : IMylnterface 

{

    public void DoSomething() {} 

    public void DoSomethingElse () {}

}

可使用关键字virtual或abstract来实现接口成员,但不能使用static或const。还可在基类上实现接口成员,例如:

public interface IMylnterface

{

    void DoSomething(); 

    void DoSomethingElse();

}

public class MyBaseClass

{

    public void DoSomething() {}

}

public class MyDerivedClass : MyBaseClass, IMylnterface

{

    public void DoSomethingElse() {}

}

继承一个实现给定接口的基类,就意味着派生类隐式地支持这个接口,例如:

public interface IMylnterface

{

    void DoSomething(); 

    void DoSomethingElse();

}

public class MyBaseClass : IMylnterface

{

    public virtual void DoSomething() {} 

    public virtual void DoSomethingElse() {}

}

public class MyDerivedClass : MyBaseClass

{

    public override void DoSomething() {}

}

显然,在基类中把实现代码定义为虚拟非常有用,这样派生类就可以替换该实现代码,而不是隐藏它们。如果要使用new关键字隐藏一个基类成员,而不是重写它,则方法MyInterfkce.DoSomething()就总是引用基类版本,即使通过这个接口来访问派生类,也是这样。

网友评论(共0条评论)

请自觉遵守互联网相关政策法规,评论内容只代表网友观点!

最新评论

点击加载更多评论>>

软件操作 新人注册送三重礼

已有 22658 名学员学习以下课程通过考试

相关视频试题

最需教育客户端 软件问题一手掌握

去 App Store 免费下载 iOS 客户端