- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
显式接口成员
接口的实现,显式接口成员
引用
如果每个成员都明显地指出了被实现的接口,通过这种途径被实现的接口我们称之为显式接口成员。显示接口成员只能通过接口调用。
C#代码
interface?IControl ??
????{ ??
????????void?Paint(); ??
????????string?phone ??
????????{ ??
????????????get; ??
????????} ??
????} ??
????interface?IDataBound ??
????{ ??
????????void?Bind(int?b); ??
????} ??
????public?class?EditBox?:?IControl,?IDataBound?{ ??
????????//下面两个是显式接口成员 ??
????????void?IControl.Paint()?{?}?//① ??
????????void?IDataBound.Bind(int?b)?{?} ??
????????public?string?phone?{?//② ??
????????????get?{ ??
????????????????return?; ??
????????????} ??
????????} ??
????} ??
????class?Test?{ ??
????????static?void?Main()?{ ??
????????????EditBox?editBox?=?new?EditBox(); ??
????????????//editBox.Paint();?//显式接口成员只能通过接口调用 ??
????????????IControl?control?=?editBox; ??
????????????control.Paint(); ??
????????} ??
????}??
interface IControl
{
void Paint();
string phone
{
get;
}
}
interface IDataBound
{
void Bind(int b);
}
public class EditBox : IControl, IDataBound {
//下面两个是显式接口成员
void IControl.Paint() { } //①
void IDataBound.Bind(int b) { }
public string phone { //②
get {
return ;
}
}
}
class Test {
static void Main() {
EditBox editBox = new EditBox();
//editBox.Paint(); //显式接口成员只能通过接口调用
IControl control = editBox;
control.Paint();
}
}
如果在①处加上一个public,将提示错误:修饰符“pubilc”对此项无效 如果把②处的public去掉,将提示:EditBox不会实现接口成员IControl.phone。EditBox.phone或者是静态、非公共的,或者有错误的返回类型(在实现类中对属性的修饰符,看来忘记pubic和添加static都是不允许的)。
13.4.1 显式接口成员实现
为了实现接口,类或结构可以声明“显式接口成员实现”。显式接口成员实现就是一种方法、属性、事件或索引器声明,它使用完全限定接口成员名称作为标识符。例如
复制
interface ICloneable
{
object Clone();
}
interface IComparable
{
int CompareTo(object other);
}
class ListEntry: ICloneable, IComparable
{
object ICloneable.Clone() {...}
int IComparable.CompareTo(object other) {...}
}
这里,关于 ICloneable.Clone 和 ICo
您可能关注的文档
最近下载
- 2025电动航空器电推进系统动力电机技术规范.docx VIP
- DB37╱T 3655-2019 化工园区大气环境风险监控预警系统技术指南(试行).pdf VIP
- 百灵达FLOW-8快速使用说明书.pptx VIP
- 化工园区危险品运输车辆停车场建设标准.pdf VIP
- 《党政机关厉行节约反对浪费条例》专题党课PPT课件模板.pptx VIP
- T/HGJ 10600-2019 烧碱装置安全设计标准.docx VIP
- 最新清晰版ISO50001(中word版).docx VIP
- 临床医学 《门静脉高压症》教学课件.ppt VIP
- 最新:机械通气患者转运课件.pptx VIP
- (高清版)DB44∕T 2598-2024 《省级体育社会团体建设规范》.pdf VIP
文档评论(0)