我可以在同一名称空间中使用具有相同名称的类和接口吗?

时间:2016-03-20 10:03:50

标签: c# class interface

我被分配到一个项目(基于C#)上工作,我发现在同一个命名空间中有一个具有相同名称的类和接口[class:Payment,Interface:Payment]。所以当我构建解决方案时,它会给我一个不允许的错误。

重命名其中一个将影响解决方案中的其他许多区域。其实我不知道它是如何运作的!

有什么想法吗?

谢谢,

2 个答案:

答案 0 :(得分:5)

在同一命名空间下不可能有两个具有相同名称的类型(这是命名空间有用的一个原因)。

一个好的约定是在界面名称之前加上I字母,请参阅:IEnumerableISerializable ...

如果您必须保留相同的名称,则可以更改其中一种类型的namespace并相应地更改using namespace声明。

答案 1 :(得分:0)

这是对您的问题的很好的解释。这是关于Java的,但我认为关于命名的最佳做法可能是相似的。

Java Interfaces/Implementation naming convention