يشرح هذا المقال كيف أن ميراث جافا له علاقة "IS-A" بين الفئات الفائقة والفئات الفرعية ، مما يسمح للفئات الفرعية براث وتخصيص وظائف الفئة الفائقة. باستخدام تعدد الأشكال ، يمكن أن تحدد الفئات الفرعية سلوكيات فريدة ، مما يسمح بإعادة استخدام التعليمات البرمجية والمرونة في البرمجة الموجهة للكائنات.
في Java ، العلاقة بين الفئات الفائقة (فئة الوالدين) والفئات الفرعية (فئة الطفل أو الفئة المشتقة) في الميراث هي علاقة IS-A تعني أن الفئة الفرعية هي نسخة متخصصة من الطبقة الفائقة وراثة الوظائف (يمكن أن تكون القيود يكون تطبيقه) من فئة مستمدة من (CSU Global ، N.D). بمعنى آخر ، إذا وراثة الفئة B من الفئة A ، فإن الفئة B "هي" نوع من الفئة A. تتيح هذه العلاقة من الفئة B استخدام جميع الوظائف (يمكن تطبيق القيود) التي توفرها الفئة A ، مع إضافةها أيضًا وظائف محددة أو/عن طريق تجاوز بعض أو جميع وظائف الفئة A. قدرة فئة الطفل على تجاوز الوظيفة هي شكل من أشكال الأشكال.
"يشير تعريف القاموس لتعدد الأشكال إلى مبدأ في علم الأحياء الذي يمكن أن يكون لدى الكائن أو الأنواع العديد من الأشكال أو المراحل المختلفة. يمكن أيضًا تطبيق هذا المبدأ على البرمجة واللغات الموجهة نحو الكائنات مثل لغة Java. يمكن أن تحدد الفئات الفرعية للفئة سلوكياتها الفريدة الخاصة بها ، ومع ذلك تشترك في بعض الوظائف نفسها لفئة الوالدين "(دروس Java ™ ، N.D.) هذا مفيد بشكل خاص عند التعامل مع كائنات متعددة من فئات فرعية مختلفة تشترك في نوع الفئة الفائقة المشتركة.
على سبيل المثال: الكلاب والقطط والبوم هي حيوانات:
Superclass
public class Animal { public void makeSound() { System.out.println("Makes a Sound"); } }
الفئة الفرعية للحيوانات
public class Domesticated extends Animal { public void friendly() { System.out.println("This animal is friendly."); } }
فئة فرعية من المستأنسة
public class Undomesticated extends Animal { public void notFriendly() { System.out.println("This animal is not friendly."); } }
فئة فرعية من المستأنسة
public class Cat extends Domesticated { @Override public void makeSound() { System.out.println("Meow"); } }
فئة فرعية من undomesticated
public class Owl extends Undomesticated { @Override public void makeSound() { System.out.println("Hoots"); } }
الفئة الرئيسية لإخراج النتيجة
public class inheritanceExample { public static void main(String[] args) { Dog myDog = new Dog(); Cat myCat = new Cat(); Owl redOwl = new Owl(); System.out.println("MY Dog:"); myDog.makeSound(); // Outputs: Bark myDog.friendly(); // Outputs: This animal is friendly. System.out.println(); System.out.println("My Cat:"); myCat.makeSound(); // Outputs: Meow myCat.friendly(); // Outputs: This animal is friendly. System.out.println(); System.out.println("Red Owl:"); redOwl.makeSound(); // Outputs: Hoot redOwl.notFriendly(); // Outputs: This animal is not friendly. } }
ملاحظة: تتجاوز طرق Makeound () في فصول الكلب والقطط طريقة MakeOund () في فئة الحيوان.
بالإضافة إلى ذلك ، فئة الكلاب هي فئة فرعية للفئة المستأنسة وهي فئة فرعية لفئة الحيوان.
طفل "→"
في Java ، يمكن أن يكون للفئة الفرعية فئة فرعية واحدة فقط ، على سبيل المثال ، لا يمكن لفئة الكلاب أن تحتوي على حيوان فائق وحيوان فائق الفئة ، ما يلي غير مسموح به.
وبعبارة أخرى ، يمكن أن يكون للفئة الفرعية فئة فرعية واحدة فقط ، ... ولا يُسمح لها بوجود العديد من الآباء أو الأجداد أو الأجداد.
في الختام ، يسمح ميراث Java للفئات الفرعية باستخدام وتوسيع وظائف الفطريات الفائقة ، وتجسيد العلاقة "IS-A" وتسهيل تعدد الأشكال. هذا يعزز قابلية إعادة استخدام التعليمات البرمجية والمرونة والاتساق من خلال تمكين سلوكيات محددة في الفئات الفرعية مع الحفاظ على الخصائص المشتركة عبر طبقة فائقة مشتركة.
مراجع:
Cus Global (n.d.). الوحدة 1: العمل مع الميراث [محاضرة تفاعلية]. في جامعة ولاية كولورادو العالمية ، CSC372: برمجة II ، قسم علوم الكمبيوتر. قماش. تم الاسترجاع في 8 يونيو ، 2024 ، من https://csuglobal.instructure.com/courses/94948/pages/module-1-overview؟module_item_id=4868813 Budap &&]
دروس Java ™ (N.D.). تعلم لغة جافا: واجهات وميراث. أوراكل. تم الاسترجاع في 8 يونيو 2024 ، من Https: //docs.oracle.com/javase/tutorial/java/iandi/polymorphism.html
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3