![]() |
|
Auto-Implemented Properties In Visual Basic 2010 - نسخة قابلة للطباعة +- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb) +-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182) +--- قسم : قسم مقالات VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=184) +--- الموضوع : Auto-Implemented Properties In Visual Basic 2010 (/showthread.php?tid=4696) |
Auto-Implemented Properties In Visual Basic 2010 - RaggiTech - 01-10-12 كاتب الموضوع : Islam Ibrahim
الخصائص المعرفة تلقائياً Auto-Implemented Properties تمكنك من كتابة الخصائص الخاصة بفئتك دون الحاجة لكتابة حقول Get & Set يدوياً , وفي هذه الحالة يقوم مترجم Visual Basic بتوليد Private Fields من أجلك كما يقوم أيضاً بتوليد حقول Get و Set تلقائيا أثناء وقت الترجمة Compile Time (هذه الميزة تشبه إلى حد ما ال Automatic Properties والموجودة في #C) . الخاصية المعرفة تلقائياً تعد مكافئة لخاصية ذات حقل خاص Private field المثال التالي يوضح كيفية كتابتها: كود : Property Prop2 As String = "Empty"كود : Private _Prop2 As String = "Empty"كود : Public Property Name As Stringعند استخدام خاصية معرفة تلقائياً يقوم المترجم بإضافة حقل خفي والذي سيحمل قيمة تلك الخاصية , هذا المتغير يحمل نفس النوع الذي تم به تعريف تلك الخاصية كما يحمل نفس الاسم مسبوقاً بعلامة (_) , على سبيل المثال إذا قمت بتعريف خاصية بالاسم ID سيكون اسم المتغير الخفي _ID , وفي هذه الحالة إذا قمت بتعريف متغير آخر ضمن نفس الفئة يحمل نفس الإسم _ID فإن ذلك سيحدث لبساً وسيقوم المترجم عندها بتوليد خطأ أثناء الترجمة .ال Backing field يتميز بالخصائص التالية:
تهيئة الخصائص المعرفة تلقائياً Initializing Auto-Implemented Properties
كود : Property FirstName As String = "James"
كود : Property Grades As Integer() = {90, 73}الخصائص المعرفة تلقاءياً مفيدة كثيراً ويمكن استخدامها في سيناريوهات مختلفة , ولكن توجد بعض الحالات التي يتعذر فيها استخدامها , والتي لابد فيها من تعريف الخصائص بالطريقة القياسية أو بالطريقة الموسعة . لن تتمكن من استخدام الخصائص المعرفة تلقائياً في الحالات التالية:
عندما ترغب في توسيع خاصية معرفة تلقائياً إلى خاصية قياسية أو موسعة , سيمكّنك محرر الكود عندها من القيام بذلك بحيث سيقوم بتوليد أجزاء Get & Set بالإضافة إلى السطر End Property تلقائياً وذلك بالوقوف في سطر فارغ أسفل تعريف الخاصية المعرفة تلقائياً وكتابة الحرف G (من أجل الجزء Get) أو الحرف S (من أجل الجزء Set) , ومن ثم الضغط على زر Emter, يقوم محرر الكود بتوليد أجزاء Get & Set من أجل القراءة /ReadOnly أو الكتابة فقط WriteOnly عند الضغط على Enter مباشرة بعد تعريف الخاصية. منتهى الروعة! أليس كذلك؟ مترجم بتصرف. Auto-Implemented Properties In Visual Basic 2010 - RaggiTech - 01-10-12 اقتباس: [TABLE="width: 100%"] [TR] [TD="class: alt2"]المشاركة الأساسية كتبها SAFMEHDI كيف ذلك في سطر واحد ؟[/TD] [/TR] [/TABLE] رد : Islam Ibrahim
يبدو أنك لم تفهم موضوع جيداًعندما تقوم بتعريف Auto-Implemented Property بهذا الشكل: كود : Public Class Testكود : Public Class Testكود : Private Function get_Prop2() As String |