Збекистон миллий университети


Объект қийматларини бериш



Download 1,98 Mb.
bet45/56
Sana23.06.2022
Hajmi1,98 Mb.
#694633
TuriПрограмма
1   ...   41   42   43   44   45   46   47   48   ...   56
Bog'liq
inf va dast-oquv-qollanma

Объект қийматларини бериш. Объектларни ворислик хусусиятидан келиб чиққан ҳолда объект туридаги ўзгарувчилар учун қиймат беришнинг қуйидаги қоидаси аниқланган. Объект ўзгарувчиларга фақат ўз туридаги ўзгарувчи қийматини бериб қолмасдан, балки шу ўзгарувчи туридан ҳосил бўлувчи турдаги ўзгарувчилар қийматларини бериш мумкин. Худди шу қоида процедура ва функциялар учун уларнинг «объект» туридаги параметрлар қийматини беришда амал қилади.
Мисол учун
Var
ObjPosVar : ObjPos;
ObjSymVar : ObjSym;
...
ObjPosVar : ObjSymVar;
ObjSymVar қийматларини ObjPosVar га ўтказиш учун юқоридаги қиймат бериш етарли. Бунда ObjPos нинг га ворислик билан ўтган майдонлари мос қиймат билан тўлдирилади. Умуман айтганда, объектлар учун қиймат бериш
Аждод ß Ворис
схема билан амалга ошади. Бу ҳолда чап томондаги ўзгарувчининг барча майдонларининг қиймат олиши кафолатланади, акс ҳолда ворисдаги «ортиқча» майдонлар қиймати аниқланмай қолиши мумкин.
Объект туридаги ўзгарувчилар динамик бўлиши мумкин, яъни улар кўрсатгич кўриниши сифатида аниқланган бўлиши мумкин.
Var
ObjPosVarPtr: ^ ObjPos;
ObjSymVarPtr : ^ ObjSym;
Бу ерда ҳам динамик объектлар билан ишлаш процедуралари ва қиймат беришнинг юқоридаги қоида амал қилади.


Назорат саволлари



  1. Object ва Record турлари ўртасидаги фарқ нимада?

  2. ОЙПнинг учта асосий тушунчаси нима?

  3. Объектни аниқлашда нима учун файл туридаги компонента бўлиши мумкин эмас?

  4. Объектда аниқланган ўзгарувчига қиймат бериш қандай амалга оширилади?



§ 3.22. ОЙП да ворислик ва полиморфизм.


ОЙПда полиморфизм. Объектларга мос турдаги қийматларни беришдаги турлар мослашуви процедура ва функцияларга параметрларни беришда ҳам сақланиб қолади. Объект туридаги формал параметрга ўз туридаги ёки шу турдан ҳосил бўлган турдаги фактик параметрларни бериш мумкин. Объектларнинг бундай мувофиқлашув хусусиятига полиморфизм дейилади. Мисол тариқасида экранга белги ёки сатрни чоп қилувчи объектларни кўрамиз.
...
{бу ерда ObjPOs,ObjSym ва ObjStr объектлар эълони бўлади}
Procedure PrintObj(Var Obj:ObjPos); {полиморф объектни эълон қилиш}
Begin
Obj.Print
End;
Var
ObjSymVar : ObjSym;
ObjStrVar : ObjStr;
Begin
ObjSymVar.Init(10,10,’*’);
ObjStrVar.Init(20,20,’Полиморфлик хоссасини намоён қилиш’);
PrintObj(ObjStrVar);
PrintObj(ObjSymVar);
...
End.
Биз олдиндан барча объектларда PRINT методини аниқлаган эдик. Полиморф объектни аниқлайдиган процедурада фақат битта ёзуви бор. Лекин ташқи кўриниши бўйича тўғри бўлса ҳам, бу мисол тўғри ишламайди. Фактик параметр тури қандай бўлишига қарамасдан фақат OBJPOS объектидаги PRINT ишлайди, чунки объектларда статик методлар ишлатилган.

Download 1,98 Mb.

Do'stlaringiz bilan baham:
1   ...   41   42   43   44   45   46   47   48   ...   56




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