Sinf va ob’yektlarning e’lon qilinishi. Konstruktor va destructor tushunchasi



Download 292,37 Kb.
Sana06.01.2022
Hajmi292,37 Kb.
#322409
Bog'liq
Leksiya #1

Sinf va ob’yektlarning e’lon qilinishi. Konstruktor va destructor tushunchasi

Fan: Dasturlash 2

Hafta: 1

Ma’ruza: 1

Maqsad

  • Sinflar va ob’yektlarni tavsiflash;
  • Sinflarni aniqlash va ob’yektlarni yaratish;
  • Konstruuktorlardan foydalanib ob’yektlar yaratish;
  • ( . ) operatori orqali a’zo funksiyalarni chaqirish va maydonlarga murojaat qilish;

1. Kirish

Katta-masshtabli dasturiy ta’minotni ishlab chiqishda ob’yektga yo’naltirilgan dasturlash samarali hisoblanadi.

O’tgan mavzularda tanlash, sikl operatorlari hamda funkisyalar, massivlar orqali masalalar yechishni qarab chiqildi. Lekin bu o’rganganlarimiz orqali katta-masshtabli dasturlarni yarata olmaymiz. Katta miqyosli dasturlarni yaratish uchun albatta ob’yektga yo’naltirilgan dasturlashdan foydalanish zarur.

2. Ob’yektlar uchun sinflarni aniqlash

Sinf ob’yektlarning xususiyatlari va metodlarini aniqlab beradi.

Ob’yekt real dunyoning bir bo’lagini namoyon qiladi. Misol uchun, talaba, stol, tugma va hattoki kredit ham ob’yekt sifatida qaralishi mimkin. Ob’yektda takrorlanmas nom, holat va hatti-harakat mavjud bo’ladi.

  • Ob’yektning holati(boshqacha nom bilan xususiyatlari yoki atributlari) uning ma’lumot maydonlari orqali namoyon qilinadi. Misol uchun, sirkl ob’yektining radius nomli ma’lumot maydoni mavjud. Bu maydon orqali sirkl xarakterlanadi. To’rtburchak ob’yektida esa bo’yi va eni nomli maydonlar mavjud.

2. Ob’yektlar uchun sinflarni aniqlash

  • Ob’yektning hatti-harakati(boshqacha nom bilan metodlari) funksiyalar orqali aniqlanadi.

2. Ob’yektlar uchun sinflarni aniqlash

UML diagramma

2. Ob’yektlar uchun sinflarni aniqlash

3. Misol: Sinflarni aniqlash va ob’yektlar yaratish

Sinflar ob’yektlar uchun muhit va ob’yektlar sinflar orqali yaratiladi.

Listing 9.1 da ob’yektlar va sinflarga oid dastur keltitrilgan. Uchta sirkl ob’yektlari yaratiladi va radiuslari 1.0, 25 va 125 bo’lgan sirkllarning radiuslari va yuzalari ekranga chiqariladi. Ikkinchi sirklning radiusini 100 ga o’zgartirib, uning yangi radiusi va yuzasini ekranga chiqariladi.

Listing 9.1 TestCircle.cpp

Listing 9.1 TestCircle.cpp

Listing 9.1 TestCircle.cpp

Natija

4. Konstruktorlar

Konstruktor ob’yekt yaratilayotganda chaqiriladi.

Konstruktorlar uchta o’ziga xoslikka ega bo’lgan funksiyaning maxsus turi. Bu o’ziga xosliklar quyidagilar:

  • Konstruktorlar sinf nomi bilan bir xil bo’lishi shart.
  • Konstruktorlar qiymat qaytarmaydi, void ham bo’lmaydi.
  • Konstruktorlar ob’yekt yaratilayotganda chaqiriladi. Konstruktorlar ob’yektlarni initsializatsiya qilishda muhim rol o’ynaydi.

4. Konstruktorlar

Boshqa funksiyalar singari konstruktorlar ham qayta yuklanadi. Konstruktor oldidan void kalit so’zini qo’yish umumiy xatolikka olib keladi. Misol uchun,

void Circle()

{

}

Konstruktorlar ma’lumot maydonlarni initsializatsiya qiladi.

4. Konstruktorlar

Sinfda konstruktor argumentlarsiz kelishi ham mumkin. Bunday konstruktorlarga argumentsiz konstruktorlar deyiladi.

Sinf konstruktorsiz ham bo’lishi mumkin. Bu holatda argumentsiz konstruktor bo’sh tana bilan avtomatik ravishda aniqlanadi. Bunday konstruktor “jimlik qoidasiga ko’ra” konstruktor deyiladi(default constructor).

4. Konstruktorlar

Ma’lumotlar maydoni konstruktorda initsializatsiyalovchi ro’yxat(initializer list) orqali initsializatsiyalanadi. Sintaksisi quyidagicha:

SinfNomi(parametrlarRo’yxati)

:malumotMaydoni1(qiymat1), malumotMaydoni2(qiymat2) //Init-chi ro’yxat

{

//Qo’shimcha komandalar, agar lozim bo’lsa

}

Misol

Olingan xulosalar

  • Sinflarsiz ob’yektlar bo’lishi mumkin emas.
  • Sinf ob’yektlarning xususiyatlarini saqlash uchun ma’lumot maydonlari, ob’yektlarni yaratish uchun konstruktorlarni va ularning funksiyalarini aniqlaydi.
  • Konstruktorlar sinf nomi bilan bir xil bo’lishi shart.
  • Argumentga ega bo’lmagan konstruktor non-arg konstruktor deyiladi.
  • Sinfning o’zi ham ma’lumot turi hisoblanadi. Siz undan ob’yektlarni aniqlash va yaratishda foydalanishingiz mumkin.

Olingan xulosalar

6. Ob’yekt sinfning nusxasi. Sinf a’zolariga murojaat ( . ) operatori orqali amalga oshiriladi.

7. Ob’yekt xususiyatlari ma’lumot maydonlari orqali namoyon qilinadi.

8. Ob’yektning hatti-harakatlari funksiyalar to’plami orqali aniqlanadi.

9. Ma’lumot maydonlari birlamchi qiymatlarga ega bo’lmaydi. Ular konstruktorlar orqali initsializatsiya qilinishi kerak.


Download 292,37 Kb.

Do'stlaringiz bilan baham:




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