是否可以在公共财产中同时拥有私有财产和私有财产?

时间:2018-11-21 03:03:56

标签: c#

从理论上讲,在公共财产中同时获得私有化和私有化是否可行? 我不是在问这是否是好代码。一位教授说这是无效的财产,在一次测试中我发现它是错误的。

1 个答案:

答案 0 :(得分:3)

https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/classes-and-structs/restricting-accessor-accessibility

  

使用访问器的访问器上的访问修饰符限制   属性或索引器上的修饰符必须符合以下条件:

     
      
  • 您不能在接口或显式接口上使用访问修饰符   接口成员实现。

  •   
  • 仅当属性或索引器具有   设置和获取访问器。 在这种情况下,允许在   这两个访问器中只有一个。

  •   
  • 如果属性或索引器具有重写修饰符,则访问器   修饰符必须与被覆盖的访问器的访问器匹配(如果有的话)。

  •   
  • 访问者上的可访问性级别必须比   属性或索引器本身的可访问性级别。

  •   

我尚未在Visual Studio中对其进行测试,但是使用在线编译器会吐出错误(并突出显示错误的代码):

  

无法为的两个访问者指定可访问性修饰符   属性或索引器:(在此处插入属性名称)。

这很有意义。由于设置程序和获取程序都被标记为私有,因此根本无法公开访问的“公共”属性的意义是什么?这是利益冲突。