Abstrakt sinflar tashkil etish va ulardan foydalanish usullari. Abstraksiya



Download 44,09 Kb.
bet4/8
Sana21.12.2022
Hajmi44,09 Kb.
#893037
1   2   3   4   5   6   7   8
Bog'liq
Abstrakt sinflar tashkil etish va ulardan foydalanish usullari.

Default konstruktorlar
Agar Siz konstruktor kiritmasangiz, default konstruktor Siz uchun tayyor holatda turgan bo’ladi. Default konstruktorda argument bo’lmaydi va superklassdagi argumentsiz konstruktorni chaqiradi.
Konstruktorlar meros qilib olinmaydi

Subklasslar o’zlarining superklasslaridan konstruktorlarni meros qilib olishmaydi. Konstruktor kiritmaydigan subklassda faqatgina default (argumentsiz, nomsiz) konstruktor mavjud bo’ladi.


Nomlangan konstruktorlar
Klassda bir nechta konstruktorlarni ishlata olish, qo’shimcha aniqlik kiritish uchun yoki asosiy klassdagi ba’zi bir funksiyalardan foydalanishning hojati bo’lmagan vaqtda nomlangan konstruktorlardan foydalanish ayni muddao:

const double xOrigin = 0;


const double yOrigin = 0;class Point {
double x = 0;
double y = 0; Point(this.x, this.y); // Nomlangan konstruktor
Point.origin()
: x = xOrigin,
y = yOrigin;
}

Eslab qolishingiz muhim bo’lgan jihat shuki, konstruktorlar meros qilib olinmaydi. Bu degani superklassning nomlangan konstruktori subklassdan meros qilib olinmagan. Agar Siz superklassda belgilangan nomlangan konstruktorli subklass yaratmoqchi bo’lsangiz, o’sha konstruktorni subklassda ishlatishingiz kerak bo’ladi.


Quyidagi misolda Employee klassi uchun yaratilgan konstruktor Person deb nomlangan superklassdagi nomlangan konstruktorni chaqiradi.

Eslab qolishingiz muhim bo’lgan jihat shuki, konstruktorlar meros qilib olinmaydi. Bu degani superklassning nomlangan konstruktori subklassdan meros qilib olinmagan. Agar Siz superklassda belgilangan nomlangan konstruktorli subklass yaratmoqchi bo’lsangiz, o’sha konstruktorni subklassda ishlatishingiz kerak bo’ladi.


Quyidagi misolda Employee klassi uchun yaratilgan konstruktor Person deb nomlangan superklassdagi nomlangan konstruktorni chaqiradi.

Superklass construktori argumentlari konstruktor chaqirilmasidan avval ishga tushgani sababli, argument funksiyaniChaqir singari ifoda bo’lishi ham mumkin:


class Employee extends Person {


Employee() : super.fromJson(fetchDefaultData());
// ···
}

Ogohlantirish: Superklass argumentlarida this ga kirishga huquq yo’q. Masalan, argumentlar statik metodlarni chaqira oladi, lekin metodlarni emas.





Download 44,09 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©www.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