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

انواع ارث بری در جاوا (java 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 این کار را میتوانند انجام دهند). دیاگرام این ارث بری به صورت زیر است:

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

 

 

پاسخ دهید

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