Да си припомним: какво са класовете и обектите?


Пример – деклариране на метод



страница15/84
Дата03.01.2022
Размер0.54 Mb.
#112941
ТипПрограма
1   ...   11   12   13   14   15   16   17   18   ...   84
Класове
Свързани:
Изпитна тема1, Изпитна тема2
Примердеклариране на метод

Нека погледнем декларирането на един метод за намиране сбор на две цели числа:



int Add(int number1, int number2)

{

int result = number1 + number2;



return result;

}


Името, с което сме го декларирали, е Add, а типът на връщаната му стойност е int. Списъкът му от параметри се състои от два елемента – променливите number1 и number2. Съответно, връщаме стойността на сбо­ра от двете числа като резултат.

Достъп до нестатичните данни на класа

В главата "Създаване и използване на обекти", разгледахме как чрез опера­то­ра точка, можем да достъпим полетата и да извикаме методите на един клас. Нека припомним как можем да достъпваме полета и да извикваме методи на даден клас, които не са статични, т.е. нямат модификатор static, в деклара­цията си.

Например, нека имаме клас Dog, с поле за възраст – age. За да отпечатаме стойността на това поле, е нужно да създадем обект от клас Dog и да достъпим полето на този обект чрез точкова нотация:



public class Dog

{

int age = 2;



 

public static void Main()

{

Dog dog = new Dog();



Console.WriteLine("Dog's age is: " + dog.age);

}

}



Съответно резултатът ще бъде:

Dog's age is: 2

Достъп до нестатичните полетата на класа от нестатичен метод

Достъпът до стойността на едно поле може да се осъществява не директно чрез оператора точка (както бе в последния пример dog.age), а чрез метод или свойство. Нека в класа Dog си създадем метод, който връща стойността на полето age:



public int GetAge()

{

return this.age;



}

Както виждаме, за да достъпим стойността на полето за възрастта, вътре, от самия клас, използваме ключовата дума this. Знаем, че ключовата дума this е референция към текущия обект, към който се извиква метода. Следователно, в нашия пример, с "return this.age", ние казваме "от те­кущия обект (this) вземи (използването на оператора точка) стой­ността на полето age и го върни като резултат от метода (чрез ключовата дума return)". Тогава, вместо в метода Main() да достъпваме стойността на полето age на обекта dog, ние просто ще извикаме метода GetAge():

static void Main()

{

Dog dog = new Dog();



Console.WriteLine("Dog's age is: " + dog.GetAge());

}


Резултатът след тази промяна ще бъде отново същият.

Формално, декларацията за достъп до поле в рамките на класа, е след­ната:





Сподели с приятели:
1   ...   11   12   13   14   15   16   17   18   ...   84




©obuch.info 2024
отнасят до администрацията

    Начална страница