Mirsaid Aripov, Nurillo Otaxanov



Download 9,81 Mb.
bet115/209
Sana16.01.2022
Hajmi9,81 Mb.
#371485
1   ...   111   112   113   114   115   116   117   118   ...   209
Bog'liq
DELPHI dasturlash titli 2018

11.2. Ob’yektlar

Ob’yektlar klasslarning vakili sifatida dasturda var bo`limida e`lon qilinadi. Masalan:



Var student: TPerson; professor: TPerson;

Eslatma: Delphi da ob’yekt – bu dinamik struktura. Ob’yekt- o`zgaruvchi o`zida ma`lumot emas, balki ma`lumotlarga murojaatni saqlaydi. Shuning uchun dasturchi bunday ma`lumotlar uchun xotiradan joy ajratishi shart.

Xotiradan joy ajratish klassning maxsus metodi Create konstruktori yordamida amalga oshiriladi. Konstruktorning roli va hulqini ko’rsatish uchun klasslarni tavsiflashda procedure o`rniga constructor so`zidan foydalaniladi. Quyidagi misolda tarkibiga konstruktor kiritilgan Tperson klassi e`lon qilinmoqda:



TPerson  class private

fname: string [ 15 ];

faddress: string[35];

constructor Create;  konstruktor

public

procedure show;  metol

end;

Ob’yekt ma`lumotlari uchun xotiradan joy ajratish amali metod- konstruktorni qo`llash natijasida olingan qiymatni ob’yekt (klass) tipiga o`zlashtirish yo`li bilan amalga oshiriladi. Masalan,



professor : TPerson.Create;

ko`rsatmasi bajarilganidan so`ng, professor ob’yekti ma`lumotlari uchun xotiradan yetarli joy ajratiladi.

Konstruktor xotiradan joy ajratishdan tashqari, ob’yekt maydonlariga boshlang’ich qiymatlar berish vazifasini ham bajaradi. Quyidagi misolda konstruktor Tperson ob’yektiga nisbatan qo`llanmoqda:

constructor TPerson.Create;

begin

fname : '';

faddress : '';

end;

Konstruktorni qo`llash bir oz boshqacharoq. Birinchidan, uning tanasida odatdagi dinamik xotiradan joy ajratuvchi New protsedurasi yo`q (xotiradan joy ajratish bo`yicha hamma ishlarni kompilyatorning o`zi bajaradi). Ikkinchidan, dastur konstruktorga metod-funksiya kabi murojaat qilsada, konstruktor rasman qiymatlarni qaytarmaydi.

Ob’yektdan foydalanish mumkin bo`lishi uchun avval uni e`lon, so`ngra initsializatsiya qilinadi. Shundan keyin, ob’yekt maydonlari qiymatlarini aniqlash mumkin. Ob’yekt maydoniga murojaat qilish uchun ob’yekt va maydon nomlari nuqta bilan ajratib yoziladi. Ob’yekt ko`rsatkich bo`lgani uchun ^ belgisi qo`yilmaydi. Masalan, professor ob’yektining fname maydoniga murojaat qilishda odatdagi professor^.fname yozuvi o`rniga professor.fname deb yoziladi.

Ob’yekt maydonlari band qilgan joylarni bo`shatish masalasi Free metod-destruktori yordamida hal qilinadi. Masalan, professor ob’yektining xotiradan egallagan joylari



professor.Free;

ko`rinishidagi ko`rsatma yordamida bo`shatiladi.



11.3. Metodlar

Metodlar klass ob’yektlari ustida belgilangan amallarni bajaradi. Buning uchun ob’yekt va metod nomlari bir-biridan nuqta bilan ajratib ko`rsatiladi. Masalan, professor. Show; ko`rsatmasi show metodini professor ob’yektiga nisbatan qo`llaydi.

Klass metodlari oddiy protsedura va funksiyalar kabi aniqlanadi. Farqi shuki, uning nomi ikki qismdan iborat bo`ladi: metod tegishli bo`lgan ob’yekt hamda metod nomlari. Ular bir-biridan nuqta bilan ajratiladi. Quyida TPerson klassining show metodini aniqlashga namuna keltirilgan:

 TPerson klassining show metodi



procedure TPerson.Show;

begin

ShowMessage( 'Imya:'  fname  #13  'Adres:'  faddress );

end;

Eslatma: Ob’yektning maydonlariga murojaat qilish uchun metod buyruqlarida ob’yekt nomini ko`rsatilmaydi.


Download 9,81 Mb.

Do'stlaringiz bilan baham:
1   ...   111   112   113   114   115   116   117   118   ...   209




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish