默认情况下,Variable / Type声明为private

时间:2009-03-10 12:29:29

标签: c# declaration

有没有办法让变量/方法/类声明的默认访问修饰符公开?

我认为默认情况下,类声明是私有的吗?

4 个答案:

答案 0 :(得分:6)

您无法更改默认值。它们默认为限制性最强。

顶级类型的默认辅助功能(适用于该类型)为internal。 嵌套类型的默认可访问性(对于类型)为private。 成员的默认可访问性是私有的。

唯一不是限制性最强的是自动实现属性的显式部分,您可以通过添加修饰符使其更多限制:

public int Foo {get;private set;}

答案 1 :(得分:5)

一般规则是默认值是您可以指定的最私密的访问级别。唯一的轻微的变体是当你使一个属性(通常是setter)的一部分比属性的其余部分更私密时。

能够更改默认值会让维护代码的人感到非常困惑。有许多人认为你永远不应该使用默认值,总是明确指定可见性。

答案 2 :(得分:2)

是的,所有类型的成员都是私人的。但是,不,不能改变。

答案 3 :(得分:1)

您无法更改其他答案正确指示的行为

但您可以编辑类模板文件,以便每次从解决方案资源管理器中添加类时,public关键字都会以新添加的类为前缀。

请参阅here以修改visual studio模板