استخدام موصِّلات ومُحوِّرات في جافا

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

طرق التبعي

An الموصل يتم استخدام الأسلوب لإرجاع قيمة حقل خاص. يتبع نظام تسمية يسبق كلمة "get" إلى بداية اسم الطريقة. على سبيل المثال ، دعنا نضيف أساليب الموصل للاسم الأول والأسماء الوسطى والاسم الأخير:

تعرض هذه الطرق دائمًا نفس نوع البيانات مثل الحقل الخاص المقابل لها (على سبيل المثال ، سلسلة) ثم تُرجع ببساطة قيمة هذا الحقل الخاص.

يمكننا الآن الوصول إلى قيمهم من خلال طرق كائن شخص:

طرق Mutator

يتم استخدام طريقة mutator لتعيين قيمة حقل خاص. يتبع نظام تسمية يسبق كلمة "set" إلى بداية اسم الطريقة. على سبيل المثال ، دعنا نضيف حقول mutator للعنوان واسم المستخدم:

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

من الممكن الآن تعديل قيم العنوان واسم المستخدم داخل كائن الشخص:

instagram viewer

لماذا استخدام ملحقات والمطفرات؟

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

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

لنفترض أننا قررنا تعديل كيفية تخزين الأسماء الوسطى. بدلاً من سلسلة واحدة فقط ، يمكننا الآن استخدام مجموعة من السلاسل:

لقد تغير التطبيق داخل الكائن ولكن العالم الخارجي لم يتأثر. الطريقة التي تسمى بها الأساليب تبقى كما هي بالضبط:

أو ، لنفترض أن التطبيق الذي يستخدم كائن الشخص يمكنه فقط قبول أسماء المستخدمين التي تحتوي على عشرة أحرف كحد أقصى. يمكننا إضافة التحقق من الصحة في mutUsername mutator للتأكد من أن اسم المستخدم يتوافق مع هذا المطلب:

الآن إذا كان اسم المستخدم الذي تم تمريره إلى setUsername mutator أطول من عشرة أحرف ، فسيتم اقتطاعه تلقائيًا.