【问题标题】:How can we declare Interface with Internal Keyword我们如何使用内部关键字声明接口
【发布时间】:2013-01-01 06:13:59
【问题描述】:

接口是客户端和服务器之间的契约,服务器必须定义或实现接口中声明的方法。这是 internal 的定义,我认为这意味着 Interface 应该只公开,但是当我在 interface 之前使用 internal 关键字创建接口时,它工作正常并且没有给我任何编译时错误,但我不明白为什么。

编辑:即使我们可以将接口声明为内部接口,实现接口成员的类方法也必须是公共的。为什么会这样?

【问题讨论】:

  • C# interfaces 与客户端或服务器无关。 interface 是一种类型。
  • 那么你的意思是接口不是客户端和服务器之间的合同?
  • 这取决于你如何定义“接口”、“客户端”、“服务器”和“合约”;-)
  • @SLaks,“客户端和服务器”的奥秘用法在帖子中的确切含义中使用 - OLE/COM 对象是这样调用的......但是 99.9% 你是对的意思是 Ashish 说出这些话......
  • 我认为接口的实际使用是,如果客户端在其末尾使用接口变量,那么它100%肯定它可以使用接口中声明的任何方法,即使服务器类功能发生变化不能打破

标签: c# .net oop interface


【解决方案1】:

internal 关键字表示该类或接口只能被同一程序集中的其他类使用。

http://msdn.microsoft.com/en-us/library/7c5ka91b(VS.80).aspx

接口不一定是两个客户端或服务器之间的契约,而是一个对象将实现某些方法或属性的承诺。

http://msdn.microsoft.com/en-us/library/87d83y5b(v=VS.71).aspx

【讨论】:

  • 'Interface is a promise of ...' 我喜欢这个,介意我借用这个短语吗? +1 顺便说一句
猜你喜欢
  • 1970-01-01
  • 2015-09-05
  • 2022-12-08
  • 1970-01-01
  • 1970-01-01
  • 2017-04-21
  • 2016-12-24
  • 1970-01-01
  • 2013-08-24
相关资源
最近更新 更多