Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
1098 of 1492 menu
◀ ▶

Ключевое слово partial

Модификатор partial перед class, struct или record означает, что определение типа продолжается в другом месте - обычно в другом файле. Компилятор склеивает все части в один тип. Члены из разных частей видят друг друга, в том числе private.

Синтаксис

partial class Имя { // часть 1 } partial class Имя { // часть 2 }

Пример

Давайте объявим partial класс в двух частях одного файла и вызовем метод из второй части:

using System; partial class Worker { public void Run() { ShowCode(); } } partial class Worker { private void ShowCode() { Console.WriteLine("12345"); } } class Program { static void Main() { new Worker().Run(); } }

Результат выполнения кода:

"12345"

Пример

Давайте разнесём поле и метод по двум частям partial класса:

using System; partial class Holder { private string text = "abcde"; } partial class Holder { public void Print() { Console.WriteLine(text); } } class Program { static void Main() { new Holder().Print(); } }

Результат выполнения кода:

"abcde"

Пример

Давайте добавим partial свойство во второй части типа:

using System; partial class Meter { private int value; } partial class Meter { public int Value { get { return value; } set { value = value; } } } class Program { static void Main() { var meter = new Meter(); meter.Value = 5; Console.WriteLine(meter.Value); } }

Результат выполнения кода:

5

Смотрите также

  • ключевое слово class,
    которое чаще всего делают partial
  • метод расширения extension,
    который выносят в отдельный статический класс
  • свойство get и set,
    которое можно разнести по частям типа
  • модификатор private,
    который общий для всех частей partial типа
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить