فئة الخلاصة في Java والطرق [مع أمثلة]

نشرت: 2021-06-18

ستناقش المقالة التالية خصائص التجريد في Java وكيف يمكن تحقيقها من خلال الفئات المجردة والطرق المجردة. سنستكشف ميزات الفئات والواجهات المجردة في جافا.

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

التجريد

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

في Java ، يتحقق التجريد من خلال الفئات والواجهات المجردة.

فئة الملخص في جافا

تُستخدم الكلمة الأساسية "abstract" في الفئات والطرق المجردة في Java. تحتوي فئة الملخصات على الكلمة الأساسية المجردة في إعلانها.

صيغة فئة Java abstract هي:

فئة مجردة class_name

{

الملخص العام باطل the_abstractMethod () ؛

the_normalMethod () باطل عام

{

# جسم الطريقة

}

}

يوضح بناء الجملة أعلاه أنه يمكن احتواء كل من الطرق العادية والمجردة في فئة مجردة.

بعض خصائص الفئات المجردة هي:

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

طرق مجردة

الطرق المجردة هي تلك الأنواع من الأساليب التي لا تتطلب التنفيذ لإعلانها. هذه الأساليب ليس لها هيئة مما يعني عدم التنفيذ. بعض خصائص الطريقة المجردة هي:

  • يتم الإعلان عن طريقة مجردة في Java من خلال الكلمة الأساسية "abstract".
  • أثناء الإعلان عن الطريقة المجردة ، يجب وضع الكلمة الأساسية المجردة قبل اسم الطريقة.
  • لا يوجد جسم بطريقة مجردة ، فقط توقيع الطريقة موجود.
  • لا تحتوي الطريقة المجردة في Java على أقواس معقوفة ، لكن نهاية الطريقة ستحتوي على فاصلة منقوطة (؛)

الطريقة المجردة المزدوجة (مزدوج n1 ، مزدوج n2) ؛

  • يجب التصريح عن أي فئة تحتوي على طريقة مجردة كفئة مجردة. على الرغم من أن العكس قد لا يكون صحيحًا ، أي أنه ليس من الضروري أن يكون للفئة المجردة طريقة مجردة.
  • يتطلب وراثة فئة مجردة بواسطة فئة عادية تنفيذ جميع الطرق المجردة في الفصل الأصلي.

مثال على طريقة مجردة

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

{

نموذج السلسلة الخاص ؛

لون السلسلة الخاص ؛

عام دولي خاص

الحساب المزدوج المجرد العام () ؛

}

إذا لم تنفذ الفئات المشتقة الطرق المجردة ، فقد ينتج عنها فئات مجردة لا يمكن إنشاء مثيل لها.

لا يمكن استخدام عدد قليل مع الكلمات الأساسية المجردة في Java.

  • أخير
  • مواطن مجردة
  • ثابت مجردة
  • مجردة خاصة
  • مجردة متزامنة
  • صارم مجردة

يظهر أدناه رمز يوضح استخدام طريقة مجردة في Java .

مصدر

ناتج الكود هو:

واجهات جافا

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

يجب أن تحدد الفئة جميع أساليب الواجهة التي تنفذها. فقط بالنسبة لفئة مجردة ، لا يلزم تحديد الطرق بواسطة الفئة.

تشبه الواجهة فئة Java abstract بالطرق التالية:

  • يمكن احتواء أي عدد من الأساليب في الواجهة.
  • يستخدم ملحق .java لكتابة واجهة في ملف. يجب أن يتطابق اسم الملف مع اسم الواجهة.
  • يحتوي ملف .class على رمز بايت للواجهة.
  • تظهر الواجهات في حزم. يوجد ملف بايت كود للواجهة في دليل يحمل نفس اسم اسم الحزمة.

تختلف الواجهة عن فئة Java abstract بالطرق التالية:

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

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

خصائص الواجهة

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

كيف يتم التصريح عن الواجهة؟

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

بناء جملة الواجهة:

واجهة name_of_the_interface {

# تعلن الحقول

# التصريح عن الأساليب المجردة

}

على سبيل المثال واجهة المشغل

{

العمر النهائي النهائي = 40 ؛

int احسب () ؛

}

كيف تنفذ واجهة؟

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

فيما يلي مثال على تطبيق الواجهة:

كلاس ماروتي تنفذ السيارة

يظهر أدناه مثال على رمز يوضح تنفيذ واجهة في Java.

مصدر

يولد الرمز الناتج التالي:

يظهر أدناه رمز لتطبيق تنفيذ واجهات متعددة.

مصدر

يولد الرمز الناتج التالي:

بعض النصوص…

بعض النصوص الأخرى ...

لماذا تستخدم الواجهة؟

  • تستخدم الواجهات لتحقيق التجريد الكامل.
  • يمكن تحقيق الوراثة المتعددة في Java من خلال استخدام الوراثة لأن Java لا تدعم الوراثة المتعددة.
  • يمكن تحقيق الاقتران السائب من خلال استخدام واجهة.
  • من خلال استخدام تنفيذ التجريد في جافا يمكن تحقيقه.

على الرغم من أنه يمكن تحقيق التجريد في Java من خلال فئة Java abstract ، إلا أن الواجهات تستخدم لأنها تحتوي على متغيرات نهائية وعامة وثابتة. ومع ذلك ، قد تكون المتغيرات غير النهائية موجودة في فئة مجردة.

إذا تم استخدام كل من واجهة Java وفئة Java abstract لتحقيق التجريد ، فمتى يجب استخدام الواجهة وفئة الملخص؟

  • يتم استخدام فئة مجردة عندما يحتاج المستخدم إلى تعريف قالب لمجموعة من الفئات الفرعية.
  • يتم استخدام الواجهة عندما يحتاج المستخدم إلى تحديد دور للفئات الأخرى.

بعض مزايا التجريد هي:

  • يتم تقليل تعقيد البرنامج.
  • هناك فرص أقل لنسخ الكود مما يزيد من قابلية إعادة الاستخدام.
  • يتم زيادة أمان البرنامج من خلال استخدام التجريد حيث يتم توفير بعض التفاصيل فقط للمستخدم.

خاتمة

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

إذا كنت مهتمًا أيضًا بمعرفة المزيد وتطبيق المفاهيم في مشاكل الحياة الواقعية ، فيمكنك الاطلاع على دورة الماجستير في علوم الكمبيوتر المقدمة من upGrad و IIIT -Bangalore المعترف بها من قبل جامعة ليفربول جون مورس . تم تصميم الدورة للمهنيين المبتدئين (21-45 عامًا) الذين يقدمون أكثر من 500 ساعة من التدريب من خبراء الصناعة وكليات هندسة البرمجيات الرائدة. يمكن الاطلاع على مزيد من التفاصيل حول الدورة على صفحة ويب upGrad الرسمية.

اصقل مهاراتك واستعد للمستقبل

تقدم لبرنامج Executive PG في تطوير البرمجيات من IIIT-B