Методы
Метод - это процедура или функция класса.
На данном шаге, определение нам ничего не говорит, но как по мне, это самое грамотное определение метода.
В этой главе мы разберемся, что такое процедура и функция, чем они отличаются и для чего они нужны.
Примечание:
- В данной главе мы будем работать за пределами метода
Main()
, но в пределах классаProgram
. - Все названия методов должны писаться с большой буквы и быть глаголом (правила хорошего тона).
- Пока мы работаем в пределах класса
Program
, любое создание метода, будет сперва сопровождаться ключевым словомstatic
. Нам не нужно понимать, что делает и для чего нужно данное ключевое слово в текущем разделе книги, поэтому мы просто пишем его, пока находимся в пределах классаProgram
. - В методах мы можем делать все то, что и делали до этого в методе
Main
.
Процедура
Процедура - блок кода, который ничего не возвращает.
Она используется в тех случаях, когда нам нужно выполнить определенную последовательность действий и только.
Чтобы написать процедуру, нам потребуется написать ключевое слово void
, через пробел написать название данной процедуры, а затем поставить круглые и фигурные скобочки. В фигурных скобочках мы пишем сам код (как и в методе Main
).
Пример:
using System;
public class Program
{
static void Main(string[] args)
{
PrintMessage(); // вызов метода
}
static void PrintMessage()
{
Console.WriteLine("Message!")
}
}
Функция
Функция - блок кода, который что-то возвращает.
Она используется в тех случаях, когда нам нужно вернуть какое-либо значение.
Чтобы написать функцию, нам потребуется написать тип данных, который вернет функция. После чего, через пробел написать название данной функции, а затем поставить круглые и фигурные скобочки. В фигурных скобочках мы пишем сам код (как и в методе Main
).
Пример:
using System;
public class Program
{
static void Main(string[] args)
{
string message = GetMessage();
Console.WriteLine(message);
}
static string GetMessage()
{
return "Hello world!";
}
}
Параметры
Параметр - переменная метода, которая будет содержать передаваемое снаружи входное значение.
Если метод имеет параметр/параметры, то при вызове мы обязаны передать аргументы для этого метода.
Пример:
// a, b - параметры
static void Sum(int a, int b)
{
Console.WriteLine(a + b);
}
Параметр может иметь базовое значение и если все параметры метода его имеют, то в таком случае, при вызове метода мы можем не передавать аргументы.
Пример:
// a, b - параметры
static void Sum(int a = 1, int b = 2)
{
Console.WriteLine(a + b);
}
Аргументы
Аргумент - фактическая переменная или выражение, значение которого используется, как входное значение при вызове метода.
Пример:
using System;
public class Program
{
static void Main(string[] args)
{
int n = 3;
// n, 125 - аргументы
Sum(n, 125)
}
// a, b - параметры
static void Sum(int a, int b)
{
Console.WriteLine(a + b);
}
}