显式接口成员.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 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

文档评论(0)

me54545 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档