عند البرمجة بأي لغة ، غالبا ما تكون هناك حاجة للتفاعل مع البيانات المخزنة في الكائنات. للقيام بذلك ، يتم استخدام حقول الفئة ، وهي متغيرات مرتبطة بكائن معين. ومع ذلك ، من أجل الوصول إلى هذه الحقول واستخدام قيمتها ، تحتاج إلى معرفة كيفية الوصول إليها.
يتكون بناء الجملة الأساسي للوصول إلى حقل فئة من اسم الكائن متبوعا بمشغل النقطة واسم الحقل المراد استخدامه. على سبيل المثال ، إذا كان لدينا كائن اسمه " شخص "وكان لهذا الكائن حقل" اسم " ، للإشارة إلى قيمة هذا الحقل ، فأنت بحاجة إلى كتابة "person.name ".
ومع ذلك ، في بعض الأحيان قد يكون لحقول الفصل وصول محدود. يتم استخدام معدلات الوصول مثل العامة والخاصة والمحمية لهذا الغرض. عندما يتم الإعلان عن حقل باستخدام المعدل الخاص ، لا يمكن الوصول إليه مباشرة. بدلا من ذلك ، يتم استخدام الحاصلين والواضعين للوصول إلى مثل هذا الحقل — الأساليب التي تسمح لك بالحصول على قيمة هذا الحقل وتغييرها ، على التوالي.
في هذا المثال ، لدينا فئة شخص مع حقل اسم معلن مع المعدل الخاص. لذلك ، يتم استخدام الحاصلين والواضعين للوصول إلى هذا الحقل.
- كيف يمكنني الوصول إلى حقل الفصل?
- تعريف مفهوم حقل الطبقة
- الوصول المباشر إلى حقل الفصل
- الوصول إلى حقل الفصل من خلال الأساليب
- أمثلة على الوصول إلى حقل الفصل
- سؤال وجواب
- كيف يمكنني الوصول إلى حقل فئة في بيثون?
- كيف يمكنني الوصول إلى حقل فئة خاصة?
- كيف يمكنني تغيير قيمة حقل فئة في بيثون?
- هل من الممكن الوصول إلى حقل فئة إذا كان لدينا كائن فئة فقط?
- كيف يمكنني الوصول إلى حقل فئة إذا تم تعيين اسم الحقل كمتغير?
كيف يمكنني الوصول إلى حقل الفصل?
في البرمجة ، حقل الفئة هو متغير يتم الإعلان عنه داخل فئة وهو خاصية لكائن من تلك الفئة. للوصول إلى حقل فئة ، تحتاج إلى تحديد اسم الكائن ، متبوعا بحرف نقطة (.) ، ثم اسم الحقل. على سبيل المثال:
فئة ميكلاس {
كثافة العمليات مايفيلد = 10;
}
ميكلاس أوبج = جديد ميكلاس ();
إنت فيلدفالو = أوبج.مايفيلد;
في هذا المثال ، تحتوي فئة ميكلاس على حقل ميفيلد بقيمة 10. بعد إنشاء كائن أوبج من فئة ميكلاس ، يمكننا الوصول إلى حقل ميفيلد باستخدام أوبج.بناء جملة ميفيلد. سيتم تعيين النتيجة إلى متغير فيلدفالو.
أيضا ، يمكن تغيير حقل الفئة باستخدام عامل التعيين. على سبيل المثال:
ميكلاس أوبج = جديد ميكلاس ();
كائن.مايفيلد = 20;
في هذا المثال ، بعد إنشاء كائن أوبج من فئة ميكلاس ، نستخدم أوبج عامل التعيين.ميفيلد = 20 لتغيير قيمة حقل ميفيلد إلى 20.
، يمكن الوصول إليه من أي مكان في البرنامج. إذا تم الإعلان عن حقل بدون معدل وصول ، فلا يمكن الوصول إليه إلا من نفس الحزمة.
باستخدام الوصول إلى حقول الفصل ، يمكننا الحصول على البيانات وتغييرها داخل كائنات هذه الفئة ، مما يسمح لنا بإدارة حالة كائناتنا بشكل أكثر مرونة وتنفيذ عمليات مختلفة.
تعريف مفهوم حقل الطبقة
يشير حقل الفصل في البرمجة إلى متغير معلن داخل فئة ومتاح للاستخدام داخل تلك الفئة. حقل الفئة هو تخزين البيانات التي يمكن استخدامها من قبل أساليب مختلفة من الطبقة.
يتم تعريف حقول الفئة داخل الفصل ويمكن أن تحتوي على أنواع بيانات مختلفة ، مثل الأعداد الصحيحة والسلاسل والقيم المنطقية وما إلى ذلك. يمكن الإعلان عنها بمستويات وصول مختلفة ، مثل العامة أو الخاصة أو المحمية ، والتي تحدد من أين يمكن الوصول إليها.
لإعلان حقل فئة ، يجب تحديد نوع البيانات قبل اسم المتغير ، على سبيل المثال:
فئة عامة ميكلاس {
الخاص الباحث مايفيلد;
}
في المثال أعلاه ، يتم الإعلان عن حقل فئة باسم "ميفيلد" ونوع البيانات "إنت". مثل هذا الحقل سوف تكون متاحة فقط داخل فئة ميكلاس. إذا تم الإعلان عن حقل فئة مع معدل الوصول العام ، فسيتم الوصول إليه من أي مكان في البرنامج.
يتم الوصول إلى حقل الفئة باستخدام عامل النقطة (.) بعد اسم مثيل الفئة أو اسم الفئة. على سبيل المثال:
ميكلاس أوبج = جديد ميكلاس ();
كائن.مايفيلد = 10;
في المثال أعلاه ، يتم إنشاء كائن من فئة ميكلاس ويتم تعيين قيمة إلى حقل ميفيلد باستخدام عامل نقطة. وبالتالي ، فإن قيمة متغير ميفيلد هي 10.
يمكن استخدام حقول الفئة لتخزين المعلومات اللازمة لتشغيل طرق الفئة ، وكذلك لتمثيل حالة الكائنات التي تم إنشاؤها بناء على هذه الفئة. إنها تسمح لك بحفظ البيانات بين مكالمات الطريقة وتوفير الوصول إلى هذه البيانات من أجزاء مختلفة من البرنامج.
يمكن أن يؤدي استخدام حقول الفصل إلى تبسيط وتحسين تنظيم الكود بشكل كبير ، مما يجعله أكثر تنظيما وتنظيما.
الوصول المباشر إلى حقل الفصل
يمكنك الوصول إلى حقل الفصل مباشرة ، دون استخدام الطريقة.
في الوقت نفسه ، لا يمكن الوصول إلى الحقل إلا إذا تم الإعلان عنه باستخدام معدل الوصول العام أو المحمي.
يتيح لك الوصول المباشر إلى الحقل الحصول على قيمة هذا الحقل من أي مكان في البرنامج.
مثال على استخدام الوصول المباشر إلى حقل فئة:
فئة عامة ميكلاس {
سلسلة العامة مايفيلد = " مرحبا ، العالم!";
}
الطبقة العامة الرئيسية {
العامة ثابت الفراغ الرئيسي (سلسلة[] الحجج) {
ميكلاس أوبج = جديد ميكلاس ();
النظام.خارج.برينتلن (كائن.مايفيلد);
}
}
في هذا المثال ، تحتوي فئة ميكلاس على حقل ميفيلد العام,
التي نصل إليها مباشرة في الطريقة الرئيسية للطبقة الرئيسية.
ستكون نتيجة تنفيذ البرنامج إخراج السطر " مرحبا ، العالم!".
يمكن أن يكون الوصول المباشر إلى حقل الفصل مفيدا في الحالات التي يحتاج فيها الحقل إلى الحصول عليه مباشرة
ولا يلزم وجود طريقة منفصلة للحصول على هذه القيمة.
الوصول إلى حقل الفصل من خلال الأساليب
إحدى طرق الوصول إلى حقل الفصل هي استخدام الأساليب. تسمح لك الطرق بتعيين قيمة الحقل والحصول عليها ، بالإضافة إلى تنفيذ إجراءات إضافية عند العمل مع الحقل.
من أجل الوصول إلى حقل فئة من خلال طريقة ، تحتاج إلى إنشاء أساليب جالبة وطرق واضعة. يتم استخدام طريقة جالبة للحصول على قيمة الحقل ، ويتم استخدام طريقة اضع لتعيين قيمة الحقل.
النظر في مثال:
شخص الطبقة العامة {
اسم السلسلة الخاصة;
سلسلة العامة جيتنام () {
اسم الإرجاع;
}
اسم مجموعة الفراغ العام (اسم السلسلة) {
this.name = الاسم;
}
}
في هذا المثال ، تحتوي فئة الشخص على حقل اسم خاص. تم إنشاء أساليب جيتنام() و سيتنام () للوصول إلى هذا الحقل. تقوم طريقة جيتنام () بإرجاع قيمة حقل الاسم ، وتحدد طريقة سيتنام () قيمة حقل الاسم.
مثال على استخدام الطرق:
شخص شخص = شخص جديد();
شخص.اسم المجموعة ("إيفانوف");
النظام.خارج.برينتلن (شخص.جيتنام ()) ؛ / / مخرجات"إيفانوف"
في هذا المثال ، يتم إنشاء كائن من فئة الشخص ويتم تعيين قيمة حقل الاسم باستخدام أسلوب سيتنام (). ثم ، باستخدام طريقة جيتنام () ، يتم الحصول على قيمة حقل الاسم وعرضها على الشاشة.
باستخدام أساليب جالبة وطرق اضع يسمح لك للسيطرة على الوصول إلى حقول الطبقة ، وكذلك إضافة الشيكات إضافية أو معالجة البيانات عند تعيين أو تلقي قيم الحقل.
أمثلة على الوصول إلى حقل الفصل
حقل الفئة هو متغير أعلن داخل فئة ما هو متاح وتستخدم لتخزين البيانات وحالة الكائنات من تلك الفئة. يمكنك الوصول إلى حقل الفئة باستخدام اسم الفئة والنقطة.
لنلق نظرة على بعض الأمثلة:
- مستطيل مستطيل = مستطيل جديد();
- عودة العلامة التجارية;
}
سلسلة العامة جيتموديل () {
نموذج العودة;
}