Mavzu; Do’st funksiyalar, Inkapsulatsiya, Merosxo’rlik, Polimorfizm tushunchalari



Download 1,67 Mb.
bet4/5
Sana07.11.2022
Hajmi1,67 Mb.
#861382
1   2   3   4   5
Bog'liq
MTA mustaqil ish

Boshqacharoq aytganda
Sinfning boshqa sinfdan xossa va xususiyatlarni olish qobiliyatiga merosxo'rlik deyiladi . Meros - ob'ektga yo'naltirilgan dasturlashning eng muhim xususiyatlaridan biridir.
Sub klass: Boshqa sinfdan xususiyatlarni meros qilib oladigan sinf Sub sinf yoki Derived Class deb ataladi.
Super Class: Xususiyatlari pastki sinf tomonidan meros bo'lib o'tgan sinf asosiy sinf yoki Super sinf deb ataladi.
Maqola quyidagi kichik mavzularga bo'lingan:
Nega va qachon merosdan foydalanish kerak?
Bir guruh transport vositalarini ko'rib chiqing. Avtobus, avtomobil va yuk mashinalari uchun darslar yaratishingiz kerak. fuelAmount(), sig'im(), applyBrakes() usullari uchta sinfning hammasi uchun bir xil bo'ladi. Agar biz bu sinflarni merosdan qochib yaratadigan bo'lsak, quyidagi rasmda ko'rsatilganidek, ushbu funktsiyalarning barchasini uchta sinfning har biriga yozishimiz kerak:

Yuqoridagi jarayon bir xil kodning 3 marta takrorlanishiga olib kelishini aniq ko'rishingiz mumkin. Bu xato va ma'lumotlarning ortiqcha bo'lish ehtimolini oshiradi. Bunday vaziyatdan qochish uchun merosdan foydalaniladi. Agar biz Vehicle sinfini yaratsak va unga ushbu uchta funktsiyani yozsak va qolgan sinflarni avtomobil sinfidan meros qilib olsak, biz shunchaki ma'lumotlarning takrorlanishini oldini olishimiz va qayta foydalanish imkoniyatini oshirishimiz mumkin. Quyidagi diagrammaga qarang, unda uchta sinf avtomobil sinfidan meros bo'lib o'tadi:



Merosdan foydalanib, biz funktsiyalarni uch marta emas, faqat bir marta yozishimiz kerak, chunki biz uchta sinfning qolgan qismini asosiy sinfdan (Avtomobil) meros qilib oldik.
C++ da merosni amalga oshirish : Asosiy sinfdan meros qilib olingan kichik sinfni yaratish uchun biz quyidagi sintaksisga amal qilishimiz kerak.
Sintaksis : sinf subclass_name : access_mode base_class_name { // kichik sinf tanasi };
Bu yerda, subclass_name sub sinf nomi, access_mode masalan, bu kichik sinf meros qilib kerakli tartibi: davlat, xususiy va hokazo va base_class_name siz sub sinf meros qilib istayotgan bazasi sinf nomi .
Eslatma : Olingan sinf shaxsiy ma'lumotlar a'zolariga kirish huquqini meros qilib olmaydi . Biroq, u o'sha sinf e'lon qilgan har qanday shaxsiy a'zolarni o'z ichiga olgan to'liq ota-ona ob'ektini meros qilib oladi.

#include

using namespace std;
class Parent
{

public:
int id_p;

};
class Child : public Parent
{
public:
int id_c;

};
int main()


{
Child obj1;
obj1.id_c = 7;
obj1.id_p = 91;

cout << "bola sinf " << obj1.id_c << endl;

cout << "ota sinf " << obj1.id_p << endl;
return 0;

}


Download 1,67 Mb.

Do'stlaringiz bilan baham:
1   2   3   4   5




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