Имя файла C# .cs и имя класса должны быть подобраны?

В Java имя файла должно быть общедоступным именем класса, определенным в том файле Java. C# имеет подобное требование? у меня может быть файл A.cs, который только определяет общедоступный Класс B внутри? спасибо,

19
задан Steve Guidi 8 February 2010 в 20:57
поделиться

4 ответа

Нет, нет аналогичное требование.

Да, вы можете это сделать.

Однако это считается плохой практикой.

Microsoft StyleCop предупредит вас, если вы сделаете это, но все будет скомпилировано нормально.

24
ответ дан 30 November 2019 в 02:33
поделиться

Нет, не требуется, чтобы имя файла соответствовало единственному общедоступному классу, определенному в файле. Фактически, нет необходимости иметь связь между именем содержащего файла и любыми классами, которые определены в файле. В этом утверждении подразумевается, что можно даже определить более одного класса в одном и том же включающем файле (даже если существует несколько общедоступных классов, в отличие от Java). Более того, можно определить класс для нескольких файлов с помощью ключевого слова partial .

Однако передовой практикой является определение одного класса для каждого файла и присвоение файлу того же имени, что и определяемый класс (или структура и т. Д.).

24
ответ дан 30 November 2019 в 02:33
поделиться

Нет, в C # вам не нужно называть свой класс так же, как ваш файл.

Аналогичным образом, вы можете иметь несколько общедоступных классов в файле. Java позволяет иметь только один.

Это может быть полезно для определения нескольких общедоступных перечислений в одном файле. Из нескольких небольших классов.

Однако класть слишком много в один файл - плохая практика.

2
ответ дан 30 November 2019 в 02:33
поделиться

imagemagick имеет команду под названием identity, которая обрабатывает это - проверьте с бумажной документацией - вероятно, есть способ справиться с этим из вашего приложения RoR.

-121--2303391-

Что касается места хранения паролей: используйте одностороннее солевое хеширование для обеспечения безопасности. Вот статья о том, почему .

-121--4903883-

Возможно наличие файла A.cs , который содержит открытый класс B , но считается неправильной практикой.

2
ответ дан 30 November 2019 в 02:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: