Методи
- Теория
- Код
Методите са фундаментални единици на кода, които определят действията на обектите. Нека разгледаме как се декларира метод и какво означава всяка част от неговата декларация.
Стандартна Декларация на Метод:
[модификатор за достъп] [static] [връщаем тип] [име на метода]([списък с параметри]) {
// Тяло на метода
}
-
Модификатор за достъп: Указва нивото на достъп до метода.
public
: Методът е достъпен от всички други класове.protected
: Достъп до метода е възможен в същия клас и в класовете наследници.private
: Методът е достъпен само в рамките на дефиниращия го клас.internal
: Методът е видим в рамките на същата сборка.
-
static: Ако е указано, методът е статичен и принадлежи към класа, не към инстанция на класа.
-
Връщаем тип: Указва типа на стойността, която методът ще върне. Ако методът не връща стойност, се използва
void
. -
Име на метода: Името, което се използва за извикване на метода.
-
Списък с параметри: Променливите, които методът приема. Те се използват в тялото на метода.
Пример на Метод:
public int Sum(int number1, int number2) {
return number1 + number2;
}
Тук public
е модификаторът за достъп, int
е връщаемият тип, Sum
е името на метода, а int number1, int number2
са параметрите.
Методите са критични за структурирането на кода в C#, тъй като позволяват повторн а употреба на код и разделянето на сложни задачи на по-малки части.
Извикване на методи
След като дефинираме метод, трябва да го извикаме там, където е необходим. Това става с името на метода и подаването на очакваните аргументи.
Извикване на Метод:
public class Calculator {
// Декларация на метод в класа Calculator
public int Add(int a, int b) {
return a + b;
}
// Метод без входни параметри
public void Greet() {
Console.WriteLine("Здравейте от Калкулатора!");
}
}
public class Main {
public static void Main() {
Calculator calc = new Calculator();
// Извикване на методи от обекта calc
int result = calc.Add(10, 20);
Console.WriteLine($"Сумата е: {result}");
// Извикване на метода Greet
calc.Greet();
}
}
Параметри ref
и out
в Методите на C#
C# предлага специални типове параметри, ref
и out
, които позволяват методите да про менят стойностите на променливите, предадени от извикващия код.
Параметър ref
:
- Ключовата дума
ref
се използва, когато искате да предадете референция към променлива, така че методът да може да променя стойността на променливата. - Променливата трябва да бъде инициализирана преди да бъде предадена като аргумент с
ref
.
public void UpdateValue(ref int value) {
value += 5;
}
// Извикване на метода:
int number = 10;
UpdateValue(ref number); // number става 15
Параметър out
:
out
се използва подобно наref
, но се използва за променливи, които ще бъдат инициализирани вътре в метода.- Променливата не трябва да бъде инициализирана преди да бъде предадена като аргумент с
out
.
public void GetValues(out int value1, out int value2) {
value1 = 5;
value2 = 10;
}
// Извикване на метода:
GetValues(out int num1, out int num2); // num1 става 5, num2 става 10