أنواع الوراثة في Java مع أمثلة

نشرت: 2022-06-26

يسمح الوراثة في Java للمطورين بإنشاء فئات جديدة بالفئات الموجودة. يتيح إمكانية إعادة استخدام الكود. يمكن أن يكون الميراث ميراثًا فرديًا وميراثًا متعدد المستويات. يقلل الوراثة من تكرار الكود ، ويجعلها أكثر قابلية للقراءة والصيانة ، وبالتالي تعمل كأداة لزيادة جودة البرامج.

جدول المحتويات

أهمية الميراث

في Java ، الوراثة هي الطريقة التي يكتسب بها فصل ما خصائص ووظائف فئة أخرى. يوفر الوراثة الوقت ، ويقلل التكرار ، ويجعل الكود أكثر قابلية للقراءة ، ومفهومًا ، ويمكن صيانته ، ويعمل كأداة لزيادة جودة البرامج. الوراثة لها العديد من التطبيقات الحيوية في لغة برمجة Java ، تتيح الوراثة للمطورين إنشاء فئات جديدة باستخدام الفئات الحالية تعمل الفئات الموروثة كقوالب أو مخططات. لا يعتمد.

يشير التسلسل الهرمي للميراث إلى علاقة الوالدين والطفل بين المستويات المختلفة للميراث. يُعرف المستوى الأعلى للوراثة باسم "فئة فائقة" أو "فئة الوالدين".

تعلم دورات تطوير البرمجيات عبر الإنترنت من أفضل الجامعات في العالم. اربح برامج PG التنفيذية أو برامج الشهادات المتقدمة أو برامج الماجستير لتتبع حياتك المهنية بشكل سريع.

النحو من الوراثة جافا

يمتد اسم الفئة الفرعية الفئة الفرعية اسم الفئة الفائقة

{

// الأساليب والمجالات

}

تشير الكلمة الأساسية الممتدة إلى أنك تقوم بإنشاء فئة جديدة ترث جميع الوظائف من الأصل. إنه يعني "زيادة" أو تعزيز ما هو موجود بالفعل.

مثال: في المثال التالي للوراثة ، تعتبر الفئة Bicycle فئة أساسية ، والفئة MountainBike هي فئة مشتقة تعمل على توسيع فئة الدراجات ، والفئة Test هي فئة سائق لتشغيل برنامج.

إدخال:

// برنامج جافا لتوضيح ملف

// مفهوم الميراث

// فئة أساسية

فئة دراجات {

// تشتمل فئة الدراجات على حقلين

معدات كثافة العمليات العامة

سرعة كثافة العمليات العامة ؛

// فئة الدراجات لها مُنشئ واحد

دراجة عامة (ترس كثافة العمليات ، سرعة كثافة العمليات)

{

this.gear = العتاد ؛

this.speed = السرعة ؛

}

// فئة الدراجات لها ثلاث طرق

تطبيق باطل عام

{

السرعة - = التناقص ؛

}

speedUp العام باطل (زيادة int)

{

السرعة + = الزيادة ؛

}

// toString () لطباعة معلومات الدراجة

سلسلة إلى سلسلة عامة ()

{

العودة ("عدد التروس" + ترس + "\ n"

+ "سرعة الدراجة" + السرعة) ؛

}

}

// فئة مشتقة

فئة MountainBike تمدد دراجة {

// تضيف الفئة الفرعية MountainBike حقلاً آخر

المقعد العام

// تحتوي الفئة الفرعية MountainBike على مُنشئ واحد

دراجة جبلية عامة (ترس كثافة العمليات ، سرعة كثافة العمليات ،

بداية intHeight)

{

// استدعاء مُنشئ الفئة الأساسية (دراجات)

فائقة (السرعة والعتاد) ؛

seatHeight = بدء الارتفاع ؛

}

// تضيف الفئة الفرعية MountainBike طريقة أخرى

مجموعة الفراغ العامارتفاع (int newValue)

{

seatHeight = newValue ؛

}

// تجاوز طريقة toString ()

// للدراجات لطباعة المزيد من المعلومات

Override public String toString ()

{

return (super.toString () + "\ n ارتفاع المقعد"

+ ارتفاع المقعد) ؛

}

}

// فئة السائق

اختبار الفصل العام {

الرئيسية العامة الثابتة الفراغ (سلاسل سلسلة [])

{

MountainBike mb = new MountainBike (3 ، 100 ، 25) ؛

System.out.println (mb.toString ()) ؛

}

}

الإخراج :

عدد التروس 3

سرعة الدراجة 100

ارتفاع المقعد 25

المصطلحات المستخدمة في الميراث

  • الفئة : الفئة هي مجموعة من الكائنات لها خصائص مشتركة. إنه يشبه دليل التعليمات أو المخطط الذي يتم من خلاله إنشاء وحدات فردية أخرى.
  • الفئة الفرعية / الفئة الفرعية : الفئة الفرعية هي فئة ترث الفئة الأخرى. يطلق عليه أيضًا فئة مشتقة أو فئة ممتدة أو فئة فرعية.
  • الفئة الفائقة / فئة الوالدين : الطبقة الفائقة هي الفئة التي ترث منها فئة فرعية الميزات. يطلق عليه أيضًا فئة أساسية أو فئة أصل.
  • قابلية إعادة الاستخدام : إعادة الاستخدام هي مبدأ تصميم رئيسي في البرمجة الموجهة للكائنات. هذا يعني أنه يمكنك إعادة استخدام الحقول والأساليب من الفئات الموجودة عند إنشاء فصول جديدة بدلاً من تكرار نفسك مرة أخرى مع الترميز الفردي في كل مرة.

الدورات والمقالات الشعبية في هندسة البرمجيات

البرامج الشعبية
برنامج PG التنفيذي في تطوير البرمجيات - IIIT ب برنامج شهادة Blockchain - PURDUE برنامج شهادة الأمن السيبراني - PURDUE ماجستير في علوم الكمبيوتر - IIIT ب
مقالات شعبية أخرى
راتب Cloud Engineer في الولايات المتحدة 2021-22 رواتب AWS Solution Architect في الولايات المتحدة راتب المطور الخلفي في الولايات المتحدة راتب المطور الأمامي في الولايات المتحدة
راتب مطور الويب في الولايات المتحدة الأمريكية أسئلة مقابلة Scrum Master في عام 2022 كيف تبدأ مهنة في الأمن السيبراني في عام 2022؟ الخيارات المهنية في الولايات المتحدة لطلاب الهندسة

أنواع وراثة جافا

1. الميراث الواحد

الوراثة المنفردة تعني أن إحدى الفئات تمتد إلى فئة أخرى أو تنفذ عدة واجهات في وقت واحد مع نفس معدّل الوصول أو ليس معدّل الوصول ، أي إما عام أو خاص. ترث الفئة الفرعية التي تم إنشاؤها جميع وظائف الأعضاء وأعضاء البيانات من قاعدتها / فئتها الفائقة باستثناء تلك المعلنة على أنها خاصة ، ويمكن الوصول إلى هؤلاء الأعضاء من قبل أعضاء وأصدقاء الفئة الفرعية.

راجع المثال أدناه:

إدخال:

// برنامج جافا لتوضيح ملف

// مفهوم الميراث الفردي

استيراد java.io. * ؛

استيراد java.lang. * ؛

استيراد java.util. * ؛

الدرجة الأولى {

print_A باطل عام ()

{

System.out.println ("أ") ؛

}

}

الصف الثاني يمتد واحد {

public void print_for () {System.out.println ("for")؛ }

}

// فئة السائق

فئة عامة رئيسية {

الرئيسية العامة الثابتة الفراغ (سلسلة [] args)

{

اثنان ز = اثنان جديدان () ؛

g.print_A () ؛

g.print_for () ؛

g.print_Apple () ؛

}

}

الإخراج :

أ

إلى عن على

تفاحة

2. الوراثة متعددة المستويات

الميراث متعدد المستويات هو الذي توجد فيه سلسلة من الميراث. n في Java ، لا يمكن للفئة المشتقة الوصول مباشرة إلى أعضاء الأجداد. عندما يكون لديك تسلسل هرمي للميراث مثل هذا حيث يرث كل مستوى جديد من شخص آخر أو شيء قبله (أو العكس) ، يصبح من الصعب على أي كائن معين في أي من المجموعتين لأنهما قادران فقط على استخدام ما هو متاح في كل منهما المستويات. وبالتالي جعل تصحيح الأخطاء مملة أكثر من اللازم!

إدخال:

// برنامج جافا لتوضيح ملف

// مفهوم الوراثة متعدد المستويات

استيراد java.io. * ؛

استيراد java.lang. * ؛

استيراد java.util. * ؛

الدرجة الأولى {

print_Inheritance باطل عام ()

{

System.out.println ("الوراثة") ؛

}

}

الصف الثاني يمتد واحد {

print_in () باطل عام {System.out.println ("in")؛ }

}

الصف الثالث يمتد إلى اثنين {

print_Inheritance باطل عام ()

{

System.out.println ("جافا") ؛

}

}

// فئة مشتقة

فئة عامة رئيسية {

الرئيسية العامة الثابتة الفراغ (سلسلة [] args)

{

ثلاثة ز = ثلاثة جديدة () ؛

g.print_Inheritance () ؛

g.print_in () ؛

g.print_Java () ،

}

}

الإخراج :

ميراث

في

جافا

3. الميراث الهرمي

يمكن أن ترث فئتان في التسلسل الهرمي من بعضهما البعض. على سبيل المثال ، إذا كان كل من الكلب والقط يقعان تحت Animal ، فسيكون هناك إرث هرمي مع كونهما من نسل تلك الفئة.

إدخال:

فئة الحيوان {

أكل باطل () {System.out.println ("الأكل ...") ؛}

}

فئة الكلب يمتد إلى الحيوان {

void bark () {System.out.println (“نباح ...”) ؛}

}

فئة القط يمتد إلى الحيوان {

مواء باطل () {System.out.println (“مواء ...”) ؛}

}

فئة TestInheritance3 {

العامة الثابتة الفراغ الرئيسي (سلاسل سلسلة []) {

القط ج = القط الجديد () ؛

c.meow () ؛

ج.أيت () ؛

//c.bark()؛//CTError

}}

الإخراج :

تموء ...

يتناول الطعام…

4. الوراثة المتعددة (عبر الواجهات)

لا تدعم Java الوراثة المتعددة مع الفئات ، ولكن من الممكن تحقيقها من خلال الواجهات. في الصورة أدناه ، تم اشتقاق الفئة C من كل من A و B ، مما يعني أنهما يشتركان في بعض الميزات مع وجود تطبيقات مختلفة للآخرين اعتمادًا على احتياجاتهم الخاصة في تنفيذ التعليمات البرمجية أو تنفيذ الأساليب المطلوبة من قبل المستخدمين (i).

إدخال:

// برنامج جافا لتوضيح ملف

// مفهوم الميراث المتعدد

استيراد java.io. * ؛

استيراد java.lang. * ؛

استيراد java.util. * ؛

واجهة واحدة {

print_eye () باطلة عامة ؛

}

الواجهة الثانية {

print_for () باطلة عامة ؛

}

واجهة ثلاثة تمتد واحد ، اثنان {

print_eye () باطلة عامة ؛

}

فئة الطفل تنفذ ثلاثة {

Override public void print_eye ()

{

System.out.println ("العين") ؛

}

public void print_for () {System.out.println ("for")؛ }

}

// فئة مشتقة

فئة عامة رئيسية {

الرئيسية العامة الثابتة الفراغ (سلسلة [] args)

{

طفل ج = طفل جديد () ؛

c.print_eye () ؛

c.print_for () ؛

c.print_eye () ؛

}

}

الإخراج :

عين

إلى عن على

عين

5. الوراثة الهجينة (عبر الواجهات)

الوراثة الهجينة هي نوع من البرمجة التي تسمح لنا بخلط نوعين أو أكثر. لا تستطيع الفصول الدراسية القيام بذلك بمفردها لأن لديها مجموعة واحدة فقط من الأساليب ، مما يعني أننا نحتاج إلى كائن آخر لكي تعمل جميعها بشكل صحيح ، ولكن الواجهات توفر راحة البال من خلال السماح لك بمعرفة الشكل الذي سيبدو عليه برنامجك قبل كتابة أي كود !

إدخال

(المرجعي)

يمتد الصنفان A و B إلى الفئة C → الميراث الهرمي

تمد الفئة D الفئة A → الميراث الفردي

فئة ج

{

توزيع الفراغ العام ()

{

System.out.println ("C") ؛

}

}

تمتد الفئة A إلى C.

{

توزيع الفراغ العام ()

{

System.out.println ("أ") ؛

}

}

تمتد الفئة B إلى C.

{

توزيع الفراغ العام ()

{

System.out.println ("B") ؛

}

}

تمتد الفئة D أ

{

توزيع الفراغ العام ()

{

System.out.println ("D") ؛

}

العامة الثابتة الفراغ الرئيسي (سلاسل سلسلة []) {

D obj = new D () ؛

obj.disp () ،

}

}

انتاج:

د

إذا كنت ترغب في معرفة متعمقة حول الوراثة في Java ومفاهيم OOP الأخرى ، فقد أوصينا ببرنامج upGrad التنفيذي PG في تطوير البرمجيات من IIIT-Bangalore . تم تصميم الدورة التدريبية التي تبلغ مدتها 13 شهرًا بواسطة متخصصين في الصناعة وأعضاء هيئة تدريس على مستوى عالمي لبناء الكفاءة في أكثر من 30 أداة وبرامج. تضمنت أكثر من 400 ساعة من المحتوى ، وأكثر من 30 دراسة حالة ومشاريع ذات صلة بالصناعة ، وأكثر من 10 جلسات مباشرة لمساعدتك على تحقيق النتائج المرجوة ؛ تقدم الدورة ثلاثة تخصصات ، وهي التطوير الشامل ، وتطوير الخلفية السحابية ، والأمن السيبراني.

احجز مقعدك في البرنامج اليوم!

ما هي أنواع الميراث الأربعة؟

الأنواع الأربعة للوراثة في جافا هي: 1. الوراثة الهرمية 2. الوراثة الهجينة 3. الميراث الفردي 4. الميراث متعدد المستويات

اشرح تعدد الأشكال في جافا.

تعدد الأشكال في Java هو مفهوم برمجة كائني التوجه يمكن أن تتخذ الكائنات في البرامج بموجبه أشكالًا متعددة. يسمح القيام بذلك لكائن واحد بتنفيذ نفس الإجراء بعدة طرق.

شرح تعدد مؤشرات الترابط في جافا.

تعد خاصية Multithreading في Java ميزة يمكن من خلالها تنفيذ أجزاء متعددة (تسمى كل منها مؤشر ترابط) من البرنامج بشكل متزامن للسماح باستخدام وحدة المعالجة المركزية على النحو الأمثل.