java, آموزش قدم به قدم جاوا, جاوا, شی گرایی در جاوا

انواع ارث بری در جاوا (type of inheritance)

انواع ارث بری در جاوا

در این جلسه تیم کدگیت را با  آموزش  انواع ارث بری در جاوا همراهی کنید. پیش نیاز این آموزش شامل موارد زیر است:

  1. شی گرایی در جاوا
  2. آشنایی با This در جاوا
  3. Constructor در جاوا
  4. متد در جاوا

انواع ارث بری در جاوا

در آموزش قبل در مورد ارث بری توضیح داده شد. در این آموزش به معرفی انواع ارث بری  در جاوا به همراه مثال خواهیم پرداخت.انواع ارث بری شامل موارد زیر است:

  1. Single inheritance
  2. Multiple Inheritance
  3. Multilevel inheritance
  4. Hybrid Inheritance

ارث بری یکتا (Single inheritance)

ارث بری یکتا بسیار ساده است. وقتی یک کلاس کلاس دیگری را extends میکند ارث بری یکتا میگویند. البته تاکید میکنیم که ارث بری یکتا فقط شامل دو کلاس است و نه بیشتر!!دیاگرام این نوع ارث بری را در تصویر زیر میبینید

کد ارث بری یکتا در جاوا به صورت زیر است:

Class A
{
   public void methodA()
   {
     System.out.println("Base class method");
   }
}

Class B extends A
{
   public void methodB()
   {
     System.out.println("Child class method");
   }
   public static void main(String args[])
   {
     B obj = new B();
     obj.methodA(); //calling super class method
     obj.methodB(); //calling local method
  }
}

ارث بری چندگانه

ارث بری چند گانه یا همان multiple inheritance بسیار کم در دنیای برنامه نویسی استفاده میشود. وقتی یک کلاس دو یا چند کلاس را extends کند ارث بری چند گانه میگوییم. مشکل این نوع ارث بری مدیریت آن است به دلیل اینکه ارث بری به از جند کلاس رخ میدهد!!! دیاگرام این نوع ارث بری به صورت زیر است.

توجه داشته باشید که این نوع ارث بری در زبان های جاوا و C# و Small talk پشتیبانی نمیشود!!!!

ارث بری چند سطحی

در این قسمت از انواع ارث بری در جاوا به معرفی Multilevel Inheritance میپردازیم. این نو ارث بری را با یک مثال ساده معرفی میکنیم. فرض کنید یک کلاس به نام A ساختیم. کلاس B کلاس A را extends میکند. حال ما یک کلاس C داریم که کلاس B را به عنوان پدر خود انتخاب میکند(منظور همان extends کردن است). دیاگرام این نوع ارث بری به صورت زیر است:

کد ارث بری چند سطحی به صورت زیر است:

Class X
{
   public void methodX()
   {
     System.out.println("Class X method");
   }
}

Class Y extends X
{
public void methodY()
{
System.out.println("class Y method");
}
}

Class Z extends Y
{
   public void methodZ()
   {
     System.out.println("class Z method");
   }
   public static void main(String args[])
   {
     Z obj = new Z();
     obj.methodX(); //calling grand parent class method
     obj.methodY(); //calling parent class method
     obj.methodZ(); //calling local method
  }
}

ارث بری ترکیبی (Hybrid Inheritance)

در معرفی انواع ارث بری در جاوا به آخرین مورد یعنی ارث بری ترکیبی رسیدیم. ارث بری ترکیبی همانطور که از نامش پیداست ترکیب دو ارث بری Single و Multiple است.البته در جاوا Multiple inheritance را با interface میتوان پیاده سازی کرد(در بالا گفته شد جاوا پشتیبانی نمیکند ولی برنامه نویسان با interface این کار را میتوان انجام دهند). دیاگرام این ارث بری به صورت زیر است:

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *