Proqramlaşdırma



Yüklə 1,02 Mb.
səhifə29/34
tarix11.06.2022
ölçüsü1,02 Mb.
#61216
1   ...   26   27   28   29   30   31   32   33   34
c-sharp proqramlasdirma diline girish aze

Obyektlər necə işləyir?
Yuxarıda TicaretM sinfinə aid bir obyekt yaradanda
TicaretM ob = new TicaretM();

kimi bir sətirdən istifadə etdik. Əslində, bu sətri aşağıdakı kimi iki hissədən ibarət yaza bilərik:


TicaretM ob;

ob = new TicaretM();


Siniflərin əslində bir verilənlər tipi olduğunu demişdik. Beləliklə, birinci sətirdə TicaretM tipinə aid ob adlı bir referans dəyişən təyin etdik. Bu hələ obyekt deyil, çünki yaddaşı yoxdur! Bu vəziyyətdə dəyişənin qiyməti hələki NULL – dur. İkinci sətirdə isə bu referans dəyişəni bir yaddaş sahəsi ilə əlaqələndirdik və artıq obyektimizi yaratmış olduq. Bu sətirdə new opertoruna fikir verin. Bu operator referans dəyişənləri ilə işlədildikdə, həmin dəyişənləri dinamik olaraq (yəni işləmə zamanı) bir yaddaş sahəsinə bağlayır.


Əgər bir referans dəyişənini hansısa yaddaşla əlaqələndirməmiş (Null vəziyyətdə) müvafiq sinfin elementlərinə müraciət etmək istəsək, ―NullReferenceException‖ xətasını alarıq. Aşağıdakı proqram düzgün deyil:

Bir obyekt yaradanda, həmin obyekt aid olduğu sinfin üzvlərinin kopyasını (hüququnun çata biləcəyi) öz yaddaş sahəsində saxlayır. Yəni, hər obyekt, aid olduğu sininf elementlərinin ayrı bir kopyasını özündə saxlayır. Orijinal elementlərdə bir dəyişiklik olmur. Buna görə də bir obyekt aid elementlər üzərində edilən dəyişikliklər, digər obyektlərin elementlərinə təsir etmir. Bunu göstərən aşağıdakı proqrama baxaq:


using System; class TicaretM
{
private string mudir; public string satici;
}
class Program
{
public static void Main()
{
TicaretM ob1 = new TicaretM(); TicaretM ob2 = new TicaretM(); ob1.satici = "Sadiq Memmedov"; ob2.satici = "Kamil Hamidov";
Console.WriteLine("ob1 obyekti ucun satici: " + ob1.satici); Console.WriteLine("ob2 obyekti ucun satici: " + ob2.satici); Console.ReadKey();
}
}

Bu proqramın ekran nəticəsi aşağıdakı kimi olur:


ob1 obyektinə aid yaddaş sahəsindəki elementər üzərində edilən dəyişikiklər, ob2 obyektinin eleentlərinə təsir etmir. Bunu aşağıdakı qrafik çox gözəl təsvir edir:





Yüklə 1,02 Mb.

Dostları ilə paylaş:
1   ...   26   27   28   29   30   31   32   33   34




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin