Описание методов (процедур и функций)
Подпрограммы
Программа разбивается на несколько мелких подпрограмм, каждая из которых выполняет определенное действие, предусмотренное исходным заданием. Таким образом, подпрограмма – набор операторов, выполняющих нужное действие и не зависящих от других частей исходного текста. Подпрограмма решает часть общей задачи. У нее есть имя, которое используется при вызове подпрограммы в основную программу.
Подпрограммы бывают 2 видов: процедуры и функции.
Функция отличается от процедуры двумя особенностями:
- всегда вычисляет некоторое (одно) значение, возвращаемое в качестве результата функции,
- функция вызывается в выражениях.
Процедура в C# имеет свои особенности:
- возвращает формальный результат void, который указывает на отсутствие результата, возвращаемого при вызове процедуры,
- вызов процедуры является оператором языка,
- имеет входные и выходные аргументы, причем выходных аргументов – ее результатов – может быть достаточно много.
Обычно метод реализуется в виде функции тогда, когда он имеет один выходной аргумент, рассматриваемый как результат вычисления функции (например, sin(0.5)).
В других случаях метод реализуют в виде процедуры.
Работа с подпрограммой включает 2 этапа:
– описание метода;
– вызов метода.
Вызов подпрограммы, то есть выполнение действий, заданных в ней в виде операторов, может быть произведён в некоторой точке программы посредством указания имени этой подпрограммы.
Синтаксически в описании метода различают две части:
- Описание заголовка
- Описание тела метода.
Синтаксис заголовка процедуры:
[атрибуты] [модификаторы] {void} имя_процедуры ([список
параметров])
Синтаксис заголовка функции:
[атрибуты] [модификаторы] {тип результата функции} имя_функции
([параметры])
имя_метода ([список параметров]) составляют сигнатуру метода и является обязательная часть в заголовке метода
[ ] показывают, что атрибуты и модификаторы могут быть опущены при описании метода.
При работе с подпрограммой используются модификаторы:
static – представляет стандартный поток для консольного приложения,
public – показывает, что метод открыт и доступен для вызова пользователем и потомками класса,
private – говорит, что метод закрыт и предназначен для внутреннего использования в классе и доступен для вызова только в теле методов самого класса.
Если модификатор опущен, то метод является закрытым для пользователя и класса.
Примеры описания методов:
void A() {…};
int B() {…};
public void C() {…};
Они означают, что методы А и В являются закрытыми, а метод С – открыт. Методы А и С реализованы процедурами, а метод B – функцией, возвращающей целое значение (int), {…} – тело метода.