الفرق بينtracالفئة والواجهة في Java
الفرق الرئيسي بين عضلات البطنtracالفئة والواجهة في Java
- في الواجهة، يمكن للفئة أن تُنفذ عدة واجهات، بينما لا يمكن للفئة أن ترث إلا واجهة واحدة.tracالفئة t.
- لا تحتوي الواجهة على مُعدِّلات وصول. يُفترض أن كل شيء مُعرَّف داخل الواجهة له مُعدِّل عام، بينما يكون مُعدِّل الوصول المطلق (Abs)tracيمكن أن تحتوي الفئة t على مُعدِّل وصول.
- لا يمكن أن تحتوي الواجهة على حقول بيانات، بينما القيمة المطلقةtracيمكن أن تحتوي فئة t على حقول بيانات.
- تساعد الواجهات في تحديد القدرات الطرفية للفئة، بينما تُحدد القدرة المطلقةtracيُعرّف الصنف t هوية الصنف.
ما هو الـ ABStracالفصل t؟
فئة تحتوي علىtracيُطلق على الكلمة المفتاحية t في تعريفها اسم abstracالفئة t. المطلقtracيجب أن تحتوي فئات t على صفر أو أكثر من القيم المطلقةtracالأساليب. أي الأساليب التي لا تحتوي على جسم. يمكن أن تحتوي على عدة أساليب ملموسة.tracتتيح لك فئات t إنشاء مخططات لفئات ملموسة. ولكن يجب على الفئة الوارثة تنفيذ abstracطريقة t. القيمة المطلقةtracلا يمكن إنشاء مثيلات من فئات t.
أسباب مهمة لاستخدام الواجهات
- تستخدم واجهات لتحقيق (ABS)tracالإنتاج.
- مصمم لدعم دقة الطريقة الديناميكية في وقت التشغيل
- يساعدك على تحقيق اقتران فضفاض.
- يسمح لك بفصل تعريف الطريقة عن التسلسل الهرمي للميراث
أسباب مهمة لاستخدام ABStracفئة t
- ABStracتوفر فئات t وظائف افتراضية للفئات الفرعية.
- يوفر قالبًا لفصول محددة في المستقبل
- يساعدك على تحديد واجهة مشتركة لفئاتها الفرعية
- ABStracتتيح فئة t إمكانية إعادة استخدام التعليمات البرمجية.
ما هي الواجهة؟
الواجهة هي مخطط يُستخدم لتنفيذ فئة. لا تحتوي الواجهة على أي توابع ملموسة (توابع تتضمن شيفرة برمجية). جميع توابع الواجهة مطلقة.tracلا يمكن إنشاء مثيل للواجهة. مع ذلك، يمكن إنشاء مثيل للفئات التي تُنفذ الواجهات. لا تحتوي الواجهات أبدًا على متغيرات مثيل، ولكن يمكن أن تحتوي على متغيرات عامة ثابتة نهائية (أي متغيرات فئة ثابتة).
الفرق بين الواجهة والامتصاصtracالفئة t في Java
عضلات بطنtracتسمح لك الفئة بإنشاء وظائف يمكن للفئات الفرعية تنفيذها أو تجاوزها، بينما تسمح لك الواجهة فقط بتحديد الوظائف دون تنفيذها. يمكن للفئة أن ترث من فئة واحدة فقط.tracيمكن للفئة t تنفيذ واجهات متعددة.
| المعاملات | السطح البيني | ABStracفئة t |
|---|---|---|
| سرعة | بطيء | سريعة |
| تعدد الميراث | تنفيذ عدة واجهات | بطن واحد فقطtracفئة t |
| الهيكلية | ABStracطرق t | ABStracالأساليب الملموسة |
| متى يجب استخدام | تعزيز المستقبل | لتجنب الاستقلال |
| الميراث / التنفيذ | يمكن للفئة تنفيذ واجهات متعددة | لا يمكن للفئة أن ترث إلا قيمة مطلقة واحدةtracفئة t |
| التنفيذ الافتراضي | أثناء إضافة أشياء جديدة إلى الواجهة، يعد العثور على جميع المنفذين وتنفيذ الأشياء المحددة حديثًا بمثابة كابوس. | في حالة الامتصاصtracفي فئة t، يمكنك الاستفادة من التنفيذ الافتراضي. |
| معدِّلات الوصول | لا تحتوي الواجهة على معدّلات الوصول. يُفترض أن كل شيء محدد داخل الواجهة هو مُعدِّل عام. | ABStracيمكن أن تحتوي الفئة t على مُعدِّل وصول. |
| متى يجب استخدام | من الأفضل استخدام الواجهة عندما تشترك التطبيقات المختلفة في توقيع الطريقة فقط. التسلسل الهرمي متعدد الأشكال لأنواع القيمة. | يجب استخدامه عندما تشترك تطبيقات مختلفة من نفس النوع في سلوك مشترك. |
| حقول البيانات | لا يمكن أن تحتوي الواجهة على حقول بيانات. | يمكن أن يحتوي الفصل على حقول بيانات. |
| الوراثة المتعددة الافتراضية | قد يقوم الفصل بتنفيذ العديد من الواجهات. | يرث الصنف قيمة مطلقة واحدة فقطtracالفئة t. |
| تطبيق | الواجهة هي مطلقةtracبحيث لا يمكنه توفير أي رمز. | عضلات بطنtracيمكن أن يوفر الصنف t رمزًا افتراضيًا كاملاً يجب تجاوزه. |
| استخدام معدّلات الوصول | لا يمكنك استخدام معدّلات الوصول للطريقة والخصائص وما إلى ذلك. | يمكنك استخدام عضلات البطنtracفئة t التي تحتوي على مُعدِّلات الوصول. |
| الأستعمال | تساعد الواجهات على تحديد القدرات الطرفية للفصل. | عضلات بطنtracيُعرّف الصنف t هوية الصنف. |
| الحقول المحددة | لا يمكن تحديد أي حقول | عضلات بطنtracتتيح لك فئة t تعريف كل من الحقول والثوابت |
| وراثة | يمكن للواجهة أن ترث واجهات متعددة ولكن لا يمكنها أن ترث فئة ما. | عضلات بطنtracيمكن للفئة t أن ترث فئةً وواجهات متعددة. |
| منشئ أو مدمر | لا يمكن للواجهة أن تعلن عن المنشئين أو المدمرين. | عضلات بطنtracيمكن للفئة t تعريف الدوال البانية والدوال الهدامة. |
| حدود الامتدادات | يمكنه تمديد أي عدد من الواجهات. | لا يمكنها أن تمتد إلا لفئة واحدة أو لقيمة مطلقة واحدةtracفصل دراسي واحد في كل مرة. |
| ABStracالكلمة المفتاحية t | في عضلات البطنtracالكلمة المفتاحية t interface اختيارية عند تعريف طريقة كـ abstract. | في عضلات البطنtracالفئة تي، نظام منع انغلاق المكابحtracالكلمة المفتاحية t إلزامية لتعريف طريقة على أنها مطلقةtract. |
| نوع الفصل | لا يمكن أن تحتوي الواجهة إلا على قيم مطلقة عامةtracطرق t. | عضلات بطنtracتتمتع الفئة t بحماية وانفتاح عامtracطرق t. |
نموذج كود للواجهة والامتصاصtracالفئة t في Java
فيما يلي نموذج كود لإنشاء واجهة وtracالفئة t في Java
بناء جملة الواجهة
interface name{
//methods
}
Java مثال الواجهة:
interface Pet {
public void test();
}
class Dog implements Pet {
public void test() {
System.out.println("Interface Method Implemented");
}
public static void main(String args[]) {
Pet p = new Dog();
p.test();
}
}
ABStracبناء جملة الفئة t
abstract class name{
// code
}
ABStracمثال على فئة t:
abstract class Shape {
int b = 20;
abstract public void calculateArea();
}
public class Rectangle extends Shape {
public static void main(String args[]) {
Rectangle obj = new Rectangle();
obj.b = 200;
obj.calculateArea();
}
public void calculateArea() {
System.out.println("Area is " + (b * b));
}
}

