java

Javada Inheritance(merosxo’rlik)

Ma’lum obyekt asosida boshqa obyektni yaratish jarayoniga aytiladi. Bir klassning boshqa klassdan meros olishi yordamida amalga oshiriladi. Meros olingan obyekt ota obyektdagi xususiyatlarni tanlovga ko’ra meros oladi. Masalan, avtoulov bu ota obyekt. Bu obyekt yordamida yengil mashina, yuk mashinasi, poyga mashinasi kabi boshqa obyektlarni yaratib olishimiz mumkin. Ota klassda bo’lgan 4 g’ildirak farzand klasslarda ham mavjud bo’ladi. Ya’ni poyga mashinasi, avtoulovdan g’ildiraklarni meros oladi. Ota klassdan meros olayotgan bola klassimiz ota klassning shaxsiy bo’lmagan (private)  barcha o’zgaruvchilari, funksiyalari va h.k  larni meros qilib oladi.

Javada meros olinishi

  1. Funksiyani qayta yuklash uchun (runtime(dastur ishlab turgan vaqt) da ko’pformalikdan foydalanishda )
  2. Kodni qayta ishlatish uchun

foydalaniladi.

 

  1. class Subclass-name extends Superclass-name
  2.  
  3. {
  4.  
  5. //funskiyalar va o'zgaruvchilar
  6.  
  7. }

extends  kalit so’zi yangi klass yaratayotganimzda Super klass (Ota klass) dan meros olish uchun ishlatiladi.

Java tehnologoyasida quyi klass super klassdan meros oladi. Yani yangi klass  quyi klassni chaqiradi.

inheritance

Yuqorida shaklda Programmer  subclassi va  Employee  super klassi ko’rsatilgan. Bunda shu ikkita klassni orasidagi bog’lanish tasvirlangan.

 

  1. class Employee{
  2.  
  3. float salary=40000;
  4.  
  5. }
  6.  
  7. class Programmer extends Employee{
  8.  
  9. int bonus=10000;
  10.  
  11. public static void main(String args[]){
  12.  
  13. Programmer p=new Programmer();
  14.  
  15. System.out.println("Programmer salary is:"+p.salary);
  16.  
  17. System.out.println("Bonus of Programmer is:"+p.bonus);
  18.  
  19. }
  20.  
  21. }

 

Natija :

Programmer salary is:40000.0

Bonus of programmer is:10000

Yuqoridagi misolda Programmer  klassi Employee  klassidan meros olyapti va undagi  float salary  o’zgaruvchisini o’ziga o’zlashtirib olyapti.

Javada meros olinish turlari

Javada asosiy klassdan 3 xil usulda meros olish mumkin ular single (bir tomonlama), multilevel(bir necha class orqali) va hierarchical(iyerarxiya).

typesofinheritance

Javada bir vaqtning o’zida bir necha klass dan meros olib bo’lmaydi.

 

  1. void msg(){System.out.println("Hello");}
  2.  
  3. }
  4.  
  5. class B{
  6.  
  7. void msg(){System.out.println("Welcome");}
  8.  
  9. }
  10.  
  11. class C extends A,B
  12.  
  13. Public Static void main(String args[]){
  14.  
  15. C obj=new C();
  16.  
  17. obj.msg();//}
  18.  
  19. }

Bu yerda Compile Time Error (Kompilyatsiya Vaqtida Xatolik) bo’ladi, chunki bir vaqtning o’zida C klassi A, B klasslaridan meros olyapti. Yuqorida aytganimizdek javada bir vaqtning o’zida bir necha klassdan meros olib bo’lmaydi.

 

G'ayratjon Rayimjonov
G'ayratjon Rayimjonov

G'ayratjon Rayimjonovning so'nngi maqolalari (hammasini ko'rish)

(200 marta o'qilgan, bugun 1 marta o'qildi)

O'xshash maqolalar: