Java o’zi nima? Oydt java sintaksisi java da tiplar


Download 185.17 Kb.
bet4/8
Sana23.12.2022
Hajmi185.17 Kb.
#1047648
1   2   3   4   5   6   7   8
Bog'liq
2- Ma\'ruza

Vorislik hususiyatlari

  • Vorislik -sinflarda ierarxik ko’rinishdagi sinflanishni ta’minlaydi
  • C++ terminologiyasida:
    • Asos sinf (ya’ni voris olinadigan sinf ) base class (asos sinf) deb ataladi.
    • Voris sinf (ya’ni voris olish orqali yaratiladigan yangi sinf) derived class (voris sinf) deb ataladi.
  • Voris sinf boshqa bironta sinf uchun asos sinf bo’lishi mumkin.
  • Demak, bu orqali ko’p sathli vorislik (multiple inheritance) vujudga keladi.

Vorislikdan foydalanish

  • Biron bir sinfdan voris olingandan keyin, ushbu asos sinf a’zolari voris sinfning ham a’zolari bo’lib hisoblanadi.
  • C++ dasturlash tilida voris olish umumiy formasi quyidagicha:

class voris-sinf-nomi : access asos-sinf-nomi {
// voris sinf tanasi
};
  • public
  • protected
  • private

Misol.

class base {

int i, j;

public:

void set(int a, int b) { i=a; j=b; }

void show() { cout << i << " " << j << "\n"; }

};

class derived : public base {

int k;

public:

derived(int x) { k=x; }

void showk() { cout << k << "\n"; }

};

int main()

{

derived ob(3);

ob.set(1, 2); // asos sinf a’zosiga ruxsat ochiq

ob.show(); // asos sinf a’zosiga ruxsat ochiq

ob.showk(); // voris sinf a’zosidan foydalanish

}

Misol tahlili

  • Ushbu misolda asos sinfdan public murojaat turi orqali voris olindi
  • class derived : public base {….}

  • Bunda asos sinfning barcha public a’zolari voris sinfning ham public a’zolari bo’ladi.
  • Asos sinfning barcha himoyalangan (protected) a’zolari voris sinfning protected a’zolari bo’ladi.
  • Lekin, asos sinfning private a’zolari voris sinf uchun ham, boshqa sinflar uchun ham not accessible bo’ladi ,ya’ni asos sinfning private a’zolariga to’g’ridan to’g’ri murojaat yo’q.
  • Agar voris sinf private xususiyati orqali yaratilsa, bunda asos sinfning barcha public va protected a’zolari voris sinfning private a’zolari qatoriga o’tadi.

Download 185.17 Kb.

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




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