مقارنة الرسوم البيانية
أساس للمقارنة | يمتد | تطبيقات |
---|---|---|
الأساسية | يتم استخدام الكلمة الأساسية الممتدة لإنشاء فئة فرعية باستخدام ميزات فئة ممتازة. | يتم استخدام الكلمة المفتاحية بتنفيذ واجهة |
أساليب | قد لا تتجاوز الكلمة الرئيسية الممتدة جميع طرق الطبقة المتقدمة. | يجب أن تنفذ الكلمة الأساسية جميع طرق واجهة التطبيق التي تم تنفيذها. |
صف دراسي | يمكن للفئة تمديد فئة واحدة فقط. | يمكن للفئة تنفيذ واجهات متعددة. |
جهة تعامل | واجهة يمكن أن تمتد أكثر من واجهة واحدة. | لا يمكن للواجهة تنفيذ واجهة أخرى. |
تعريف يمتد الكلمة الرئيسية
يتم تحقيق الوراثة مفهومًا مهمًا في البرمجة الشيئية ، عندما يتم توسيع فئة فرعية لفئة أخرى. يُسمح للفئة الفرعية بتمديد صنف فائق واحد فقط. لا يمكن للفئة أبداً أن تمد أكثر من فصل دراسي واحد في Java. عندما يمتد فصل دراسي آخر ، يمكنه تجاوز الأساليب المحددة في الطبقة الفائقة. دعنا نفهم أن الكلمة الرئيسية تمتد بمساعدة مثال.
class A {String s؛ أ (السلسلة s1) {s = s1؛ } // عرض سلسلة الفراغ العرض () {System.out.println (+ s)؛ }} تمدد الفئة B إلى {String i؛ B (String s1، String i1) {super (s1)؛ i = i1 } void dispaly () {super.dispaly ()؛ / * display () من الفئة A تم استدعاؤه. * / System.out.println (+ i)؛ }} تجاوز الفئة {public static void main (String args []) {B ob = new B (Tech، Differences)؛ ob.display ()؛ / * عرض فئة B استدعى * /}} / * out put * / اختلافات Tech
في التعليمات البرمجية أعلاه ، يمكنك ملاحظة أن الفئة B تحتوي على موسع للفئة A ، وقد تجاوزت عرض الأسلوب () المحدد في الفئة أ. وبطريقة مماثلة يمكن للواجهة أن تمدد أكثر من واجهة واحدة في المرة الواحدة. وبما أن الواجهة لا تحتاج إلى تنفيذ أي أسلوب للواجهة الموسعة ، فمن المسموح به أن ترث واجهات متعددة في كل مرة.
تعريف تنفذ الكلمات الرئيسية
باستخدام أداة الكلمات الرئيسية ، ترث فئة جميع الأساليب في واجهة. عندما يقوم أحد الفصول بتنفيذ واجهة ، يجب أن تقوم هذه الفئة بتطبيق جميع طرق الواجهة التي تم تنفيذها. لا يمكن للواجهة أبداً أن تقوم بتطبيق واجهة أخرى ، حيث تقوم بتنفيذ الكلمات الرئيسية لتنفيذ الأساليب ، ولكن واجهة لا تنفذ أبداً الأساليب فيها ، لذلك من المستحيل على الواجهة تطبيق واجهة أخرى. دعنا نفهم تنفيذ الكلمات الرئيسية بمساعدة مثال.
سلاسل الواجهة {void display (String s)؛ } عدد صحيح للواجهة {void show (int i)؛ } الفئة Demo تطبق السلاسل ، عدد صحيح {void show (int i) {System.Out.Println ("قيمة عدد صحيح:" + i)؛ } void display (String s) {System.Out.Println ("string string:" + s)؛ }} فئة Demo_main {public static void main (string args []) {Demo d = new Demo ()؛ d.display ( "TechDifferences")؛ d.show (2)؛ }} / * output * / TechDifferences 2
كما هو الحال في التعليمات البرمجية أعلاه ، يمكنك أن ترى أن العرض التوضيحي للفئة يقوم بتنفيذ سطرين واجهاتين صحيحين ، كما أنه قام بتنفيذ الطرق التي تم تعريفها في كل من الواجهات التي تظهر () و show ().
الاختلافات الرئيسية بين يمتد وينفذ
- يمكن للفئة أن ترث فئة أخرى ، أو ترث واجهة أخرى واجهات أخرى باستخدام كلمة رئيسية تمتد في حين ، يمكن للفئة تنفيذ واجهات باستخدام أدوات الكلمات الرئيسية.
- قد يتجاوز أو لا يتجاوز فئة فرعية توسع الطبقة الفائقة جميع الأساليب في الطبقة الفائقة. من ناحية أخرى ، يجب على الطبقة التي تقوم بتطبيق واجهة تعريف / تحديد جميع طرق هذه الواجهة.
- يمكن للفئة تنفيذ أي عدد من الواجهة في نفس الوقت. من ناحية أخرى ، يمكن للفئة تمديد فئة واحدة فقط.
- يمكن للواجهة أن توسع أي عدد من الواجهات ، لكن الواجهة لا تستطيع أبدًا تنفيذ أي واجهة أخرى لأن التطبيق يعني تحديد الطرق والواجهة دائمًا ما تحتوي على طرق مجردة بحيث لا تتمكن الواجهة أبدًا من تنفيذ واجهة أخرى.
استنتاج:
أختتم المناقشة بقولنا إن تنفيذ واجهة يجعل الشفرة أكثر مرونة من توسيع الفصل الدراسي. لأنها تتجنب تقييد وراثة فئة واحدة فقط في Java. باستخدام كلمات رئيسية يمكن لفئة يمكن أن ترث ميزات أكثر من واجهات واحدة.