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


Общая структура программы C#

Программы C# состоят из одного или нескольких файлов. Каждый файл содержит ноль или более пространств имен. Пространство имен содержит такие типы, как классы, структуры, интерфейсы, перечисления и делегаты или другие пространства имен. В следующем примере показан скелет программы C#, содержащей все эти элементы.

using System;

Console.WriteLine("Hello world!");

namespace YourNamespace
{
    class YourClass
    {
    }

    struct YourStruct
    {
    }

    interface IYourInterface
    {
    }

    delegate int YourDelegate();

    enum YourEnum
    {
    }

    namespace YourNestedNamespace
    {
        struct YourStruct
        {
        }
    }
}

В предыдущем примере используются операторы верхнего уровня для точки входа программы. Только один файл может иметь операторы верхнего уровня. Точка входа программы — это первая строка текста программы в этом файле. В этом случае это Console.WriteLine("Hello world!");. Вы также можете создать статический метод с именем Main в качестве точки входа программы, как показано в следующем примере:

// A skeleton of a C# program
using System;
namespace YourNamespace
{
    class YourClass
    {
    }

    struct YourStruct
    {
    }

    interface IYourInterface
    {
    }

    delegate int YourDelegate();

    enum YourEnum
    {
    }

    namespace YourNestedNamespace
    {
        struct YourStruct
        {
        }
    }

    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello world!");
        }
    }
}

В этом случае программа запустится в первой строке метода Main, которая Console.WriteLine("Hello world!");

Выражения и инструкции

Программы C# создаются с помощью выражений и инструкций. Выражения порождают значение, а инструкции выполняют действие.

Выражение — это сочетание значений, переменных, операторов и вызовов методов, которые вычисляют одно значение. Выражения создают результат и могут использоваться везде, где ожидается значение. Ниже приведены примеры выражений:

  • 42 (литеральное значение)
  • x + y (арифметическая операция)
  • Math.Max(a, b) (вызов метода)
  • condition ? trueValue : falseValue (условное выражение)
  • new Person("John") (создание объекта)

Инструкция — это полная инструкция, которая выполняет действие. Операторы не возвращают значения; вместо этого они управляют потоком программы, объявляют переменные или выполняют операции. Примеры заявлений:

  • int x = 42; (инструкция объявления)
  • Console.WriteLine("Hello"); (оператор выражения — оболочка выражения вызова метода)
  • if (condition) { /* code */ } (условный оператор)
  • return result; (оператор return)

Ключевое различие: выражения вычисляются в значения, а инструкции выполняют действия. Некоторые конструкции, такие как вызовы методов, могут выполнять обе функции. Например, Math.Max(a, b) это выражение, используемое в int result = Math.Max(a, b);, но становится оператором выражения, если используется по отдельности как Math.Max(a, b);.

Подробные сведения об инструкциях см. в разделе "Инструкции". Сведения о элементах, реализуемых с помощью выражений, и других функциях, связанных с выражениями, см. в разделе "Элементы с выражением".

Вы узнаете об этих элементах программы в разделе типов руководства по основам.

Спецификация языка C#

Дополнительные сведения см. в разделе Основные понятия в спецификации языка C#. Спецификация языка является окончательным источником для синтаксиса И использования C#.