Объявление переменной / типа по умолчанию закрытое - PullRequest
1 голос
/ 10 марта 2009

Есть ли способ сделать общедоступный модификатор доступа по умолчанию для объявлений переменных / методов / классов?

Я думаю, что по умолчанию объявления классов являются частными, да?

Ответы [ 4 ]

6 голосов
/ 10 марта 2009

Вы не можете изменить настройки по умолчанию. По умолчанию они самые строгие.

Доступность по умолчанию (для типа) для типа верхнего уровня - internal. Доступность по умолчанию (для типа) для вложенного типа: private. Доступность по умолчанию для участников - private.

Единственный раз, когда он не является самым ограничительным, это явная часть автоматически реализуемого свойства, где вы можете сделать его более ограничительным, добавив модификатор:

public int Foo {get;private set;}
5 голосов
/ 10 марта 2009

Общее правило заключается в том, что по умолчанию используется самый частный уровень доступа, который вы можете указать. Единственное незначительное изменение этого варианта - когда вы делаете одну часть свойства (обычно установщик) более частной, чем остальная часть свойства.

Возможность изменить настройки по умолчанию чрезвычайно запутывает людей, которые поддерживают ваш код. Многие утверждают, что вы никогда не должны использовать значения по умолчанию, всегда явно указав видимость.

2 голосов
/ 10 марта 2009

Да, все члены типа являются частными. Но нет, это нельзя изменить.

1 голос
/ 10 марта 2009

Вы не можете изменить поведение, как правильно указано другими ответами

Но вы можете отредактировать файл шаблона класса, чтобы каждый раз, когда вы добавляете класс из проводника решений, ключевое слово public добавлялось к новому добавленному классу.

см. здесь для редактирования шаблонов Visual Studio

...