ما هو استخدام طريقة تجاوز يساوي في جافا؟
ما هو استخدام طريقة تجاوز يساوي في جافا؟

فيديو: ما هو استخدام طريقة تجاوز يساوي في جافا؟

فيديو: ما هو استخدام طريقة تجاوز يساوي في جافا؟
فيديو: #58 Object Class equals toString hashcode in Java 2024, ديسمبر
Anonim

تجاوز يساوي و hashCode بتنسيق جافا

يساوي () طريقة يكون تستخدم لمقارنة الكائنات من أجل المساواة بينما يكون hashCode تستخدم لتوليد رمز عدد صحيح يتوافق مع هذا الكائن

من هنا ، ما هو استخدام طريقة يساوي في جافا؟

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

بالإضافة إلى ذلك ، كيف يمكنك تجاوز طريقة يساوي في جافا؟ في الجزء العلوي من فئة الكود ، يمتلك الشخص طريقة يساوي () متجاوزة ، والتي اتخذت النهج التالي خطوة بخطوة:

  1. إذا كان المرجع إلى هذا الكائن هو نفس المرجع إلى كائن الوسيطة ، فقم بإرجاع true.
  2. إذا كانت الوسيطة فارغة ، فقم بإرجاع القيمة false.
  3. إذا لم تكن الكائنات من نفس الفئة ، فقم بإرجاع خطأ.

وفقًا لذلك ، لماذا نحتاج إلى تجاوز طريقة equals في Java؟

فئة String يتجاوز ال طريقة يساوي لقد ورثت من فئة الكائن ونفذت منطقًا لمقارنة كائنين من كائنات السلسلة حرفًا بحرف. السبب طريقة يساوي في فئة الكائن لا تشير المساواة لأنها لا تعرف كيف تفعل أي شيء آخر.

ما فائدة تجاوز طريقة hashCode و equals في Java؟

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

موصى به: