Поделиться через


Практическое руководство. Разделение класса в разделяемые классы (конструктор классов)

Объявление класса или структуры можно разделить между несколькими объявлениями, используя в Visual Basic ключевое слово Partial или в Visual C# — partial.Можно использовать столько разделяемых объявлений, сколько необходимо, и в стольких различных исходных файлах, в скольких требуется, или объявить все в одном исходном файле.Однако все объявления должны находиться в одной и той же сборке и в одном и в том же пространстве имен.

Разделяемые классы полезны в нескольких случаях.Например, если разработчик работает над большим проектом, то разделение класса в более чем один файл позволит работать над ним одновременно нескольким разработчикам.При работе с кодом, создаваемым Visual Studio, можно изменить класс без повторного создания исходного файла.(Примеры кода, который создает Visual Studio, включают код программы-оболочки Windows Forms и Web Service.) Можно создать код, который использует автоматически создаваемые классы без изменения файлов, создаваемых Visual Studio.

Существует два вида разделяемых методов.В Visual C# и в Visual Basic они называются "объявление" и "реализация".

Конструктор классов поддерживает разделяемые классы и методы.Фигура типа в схеме классов относится к одному расположению объявления для разделяемого класса.Если разделяемый класс определен в нескольких файлах, то можно указать, какое расположение объявления конструктора класса будет использоваться настройками свойства Расположение нового члена в окне Свойства.Т. е. при двойном щелчке мыши на фигуре класса конструктор классов перейдет к файлу исходного кода, содержащему объявление класса, указанное в свойстве Расположение нового члена.При двойном щелчке мыши на разделяемом методе в фигуре класса конструктор классов перейдет к объявлению разделяемого метода.Также к расположению объявления относится свойство Имя файла в окне Свойства.Для разделяемых классов Имя файла перечисляет все файлы, содержащие объявление и реализацию кода для этого класса.Однако для разделяемых методов Имя файла перечисляет только файл, содержащий объявление разделяемых методов.

В следующих примерах определение класса Employee разбивается на два объявления, каждое из которых определяет различную процедуру.Два разделяемых определения в примерах могут находиться в одном исходном файле или в двух различных исходных файлах.

ПримечаниеПримечание

Visual Basic использует определения разделяемого класса, чтобы отделить код, созданный Visual Studio, от кода, созданного пользователем.Код находится в отдельных исходных файлах.Например, Конструктор форм Windows Forms определяет разделяемые классы для элементов управления, например Form.Не следует изменять автоматически созданный код в этих элементах управления.

Дополнительные сведения о разделяемых типах в Visual Basic см. в разделе Partial (Visual Basic).

Пример

Чтобы разделить определение класса в Visual Basic, используйте ключевое слово Partial, как показано в следующем примере:

' First part of class definition.
Partial Public Class Employee
    Public Sub CalculateWorkHours()
    End Sub
End Class

' Second part of class definition.
Partial Public Class Employee
    Public Sub CalculateTaxes()
    End Sub
End Class

Чтобы разделить определение класса в Visual C#, используйте ключевое слово partial, как показано в следующем примере:

// First part of class definition.
public partial class Employee
{
    public void CalculateWorkHours()
    {
    }
}

// Second part of class definition.
public partial class Employee
{
    public void CalculateTaxes()
    {
    }
}

См. также

Ссылки

Разделяемые классы и методы (Руководство по программированию в C#)

разделяемый (тип) (Справочник по C#)

разделяемый (метод) (Справочник по C#)

Partial (Visual Basic)