الوراثة هي أحد المبادئ الأساسية الثلاثة للبرمجة الشيئية.
يسمح بإنشاء تصنيفات هرمية.
من خلال الوراثة، يمكنك إنشاء فئة عامة تحدد الخصائص المشتركة لمجموعة من العناصر ذات الصلة.
يمكن وراثة هذه الفئة العامة من خلال فئات أخرى أكثر تحديدًا، والتي تضيف خصائص حصرية.
في لغة جافا، تسمى الفئة الموروثة بالفئة الفائقة.
الفئة التي ترث تسمى فئة فرعية.
الفئة الفرعية هي نسخة متخصصة من الفئة الفائقة.
ترث الفئة الفرعية كافة المتغيرات والأساليب من الفئة الفائقة وتضيف عناصرها الفريدة.
الجوانب الأساسية للميراث
تدعم Java الوراثة، مما يسمح لفصل ما بدمج فئة أخرى في إعلانه.
يتم ذلك باستخدام الكلمة الأساسية الممتدة.
تضيف الفئة الفرعية وظائف (تمتد) إلى الفئة الفائقة.
مثال على ذلك هو إنشاء فئة فائقة تسمى TwoDShape، والتي تخزن عرض وارتفاع كائن ثنائي الأبعاد.
تم إنشاء فئة فرعية تسمى Triangle لتوسيع TwoDShape.
يتم استخدام الكلمة الأساسية الممتدة لإنشاء الفئة الفرعية.
TwoDShape يحدد سمات الشكل العام ثنائي الأبعاد، مثل المربع والمستطيل والمثلث وما إلى ذلك.
فئة المثلث هي فئة فرعية من TwoDShape وتقوم بإنشاء نوع محدد: المثلث.
يرث Triangle كل شيء من TwoDShape ويضيف حقل النمط وطريقة Area() وطريقة showStyle().
نمط المثلث، والذي يمكن أن يكون أي وصف مثل "كامل" أو "كفاف" أو "متساوي الساقين".
طريقة المنطقة () تحسب وتعيد مساحة المثلث.
تعرض طريقة showStyle() نمط المثلث.
يمكن للمثلث الوصول إلى أعضاء العرض والارتفاع في TwoDShape، سواء في المنطقة () أو مباشرة في كائنات t1 وt2.
TwoDShape، على الرغم من كونها فئة فائقة من Triangle، إلا أنها فئة مستقلة ويمكن استخدامها بشكل منفصل.
شكل TwoDShape = TwoDShape الجديد ()؛
عرض الشكل = 10;
الشكل. الارتفاع = 20;
Shape.showDim();
يمتد اسم الفئة الفرعية للفئة الفائقة {
// نص الفصل
في Java، يمكنك فقط تحديد فئة فرعية واحدة فقط لأي فئة فرعية تقوم بإنشائها.
لا تدعم Java الوراثة المتعددة (الوراثة من فئات فائقة متعددة في نفس الفئة الفرعية)، على عكس لغة C .
من الممكن إنشاء تسلسل هرمي للوراثة حيث تصبح الفئة الفرعية هي الفئة العليا لفئة فرعية أخرى.
لا يمكن لأي فئة أن تكون فئة فائقة في حد ذاتها.
تتمثل إحدى ميزات الوراثة في أن الطبقة الفائقة يمكنها تحديد سمات مشتركة بين كائنات متعددة، مما يسمح بإنشاء العديد من الفئات الفرعية المحددة.
يمكن لكل فئة فرعية تحديد التصنيف الخاص بها بناءً على الفئة الفائقة.
مثال على ذلك هو إنشاء فئة فرعية من TwoDShape لتغليف المستطيلات.
فئة المستطيل هي فئة فرعية من TwoDShape.
إضافة طريقة isSquare()، التي تحدد ما إذا كان المستطيل مربعًا (عندما يكون العرض مساويًا للارتفاع).
يضيف أيضًا طريقة المنطقة () التي تحسب مساحة المستطيل.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3