接口名字的显式限定 -- 接口名字的隐藏

11接口名字的隐藏

    几个不同的接口的实现---每个接口都可能含有大量的成员-----可能很快会使你的类的public名称空间遭到那些在实现类的作用域以外没有意义的成员的污染.(----也就是说并不是继承的接口的所有函数都必须暴露给外边,有的不需要暴露,只是自己内部使用)

你可以防止接口中被实现的成员成为该类的public成员,这就用到成为名字隐藏)(name hiding)的技术.

public interface IDataBound

{

void Bind();

}

public class EditBox:IDataBound

{

  void IDataBound.Bind()

 {

 Console.WriteLine("Binding to data store");

 }

}

 

main()

{

  EditBox edit=new EditBox();

 edit.Bind();//error!

  IDataBound bound=(IDataBound)edit;

  bound.Bind();

}

注意:当你隐藏一个成员的时候,不能使用访问限定符.如果你试图在一个被实现的接口成员上使用访问限定符,会产生一个编译错误.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值