لقد رأيت منشئي Java مكتوبين بطريقتين مختلفتين. على سبيل المثال:

سيارة عامة (اسم السلسلة) {
this.name = name;
}

و

السيارة العامة (سلسلة الاسم الجديد) {
الاسم = الاسم الجديد؛
}

الطريقة الأولى تستخدم "هذا". والثاني لا. وما الفرق بينهما وأيهما أفضل؟
لقد رأيت منشئي Java مكتوبين بطريقتين مختلفتين. على سبيل المثال:

سيارة عامة (اسم السلسلة) {
this.name = name;
}

و

السيارة العامة (سلسلة الاسم الجديد) {
الاسم = الاسم الجديد؛
}

الطريقة الأولى تستخدم "هذا". والثاني لا. وما الفرق بينهما وأيهما أفضل؟
user
كلتا الطريقتين لكتابة المنشئ تؤديان نفس المهمة. الفرق هو أن المنشئ الأول يسمح لك باستخدام وسيطة بنفس اسم المتغير. هذا." يسمح لك المعدل بالإشارة إلى المتغير الموجود في الكائن الحالي. بدون هذا المُعدِّل، لن تفهم Java المتغير الذي تشير إليه إذا كان لهما نفس الاسم. وبالتالي، سيتعين عليك تغيير اسم الوسيطة، والذي يمكنك ملاحظته في المنشئ الثاني الذي أدرجته.

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