Да, вы можете использовать то же пространство имен в нескольких файлах.
Самый доступный пример: в Visual Studio после создания вашего проекта вы можете создавать больше файлов в этом проекте. Существует параметр для проекта, для которого пространство имен по умолчанию назначается новым файлам. Ваш проект будет скомпилирован как отдельная dll/exe.
Вы также можете использовать существующие пространства имен, такие как System
. Класс вашей системы будет в вашей сборке. Основные сборки .NET, содержащие системный материал, не будут перекомпилированы, чтобы добавить ваше дополнение. Однако вам все равно потребуется только 1 using System
в верхней части классов, чтобы использовать ваш новый класс System.x.
Примечание: Я НЕ сторонник ввода всего кода в Систему, поэтому вы можете избежать использования утверждений позже. Есть очень веские причины не делать этого, но это слишком сложно для ответа на исходный вопрос.
WTF!Мне сказали, что 'C#' не имеет множественного наследования, потому что это «источник проблем», и вы можете объявлять одно и то же пространство имен во многих файлах, C# «смешивать» их в одно и то же ... ** и ** вы может также разбивать определение класса на несколько файлов? Шутки в сторону? –
Пространства имен предназначены для размещения типов, и поскольку типы часто определяются в разных файлах, разделение пространств имен между файлами довольно очевидно. Многие основные языки делают то же самое. Что касается классов, то аргумент более тонкий. Разделение их может помочь организовать код в случаях, когда вы вынуждены помещать большое количество членов в один класс, например. для доступа к данным или интеграции. Он также может помочь с контролем источника. В конечном счете вам решать, что ситуация не запуталась. В случае множественного наследования все становится беспорядочным с точки зрения того, как вы создаете свою рабочую среду, то есть – Mau
«В конечном счете вам решать, что ситуация не становится беспорядочной». Это предложение, которое показывает, что вы умный и хороший разработчик. И это предложение показывает, что независимо от того, что это за язык, он всегда заканчивается «разработчиком, чтобы контролировать ситуацию». Я имею в виду, что говоря, что C# не имеет множественного наследования, потому что это «источник проблем», не имеет смысла. C# - очень хороший язык, и он должен ** иметь возможности наследования. «Источником проблемы» никогда не является язык, это касается разработчиков IMHO (поэтому мы используем интерфейс в качестве обходного пути). –