אז ככה
יש לך datamember שנמצא ב private משיקולי הסתרה (לגוגמה, היום אתה רוצה להחזיק תאריך ב 3 מספרים, ומחר להחליף ב DatiTime ואתה רוצה שהמשתמשים בקוד שלך לא יצטרכו לשנות את הקוד שלהם בעקבות השינוי אצלך. אז אתה צריך לספק דרך (=מתודות) לקבלת הערכים והשמה שלהם (שינוי). חוץ מזה, אתה הרבה פעמים רוצה דרך לשלוט בשינוי במידע, כגון: לוודא שהתאריך שהמשתמש שם עונה על החוקים שלך (תאריך הגיוני, רק מהשנה האחרונה, רק תאריכים עתידיים וכו'). לשם כך אתה צריך לספק מתודה "get" - לקבלת הערכים, ומתודה "set" להשמת ערכים. .Net נותנת לך ממשק שנותן לך תחושה שאתה ניגש לdatamember עצמו, ע"י כך שהsyntax של השימוש הינו כמו בגישה לdatamember. בעצם, מלמטה, אלה מתודות רגילות לכל דבר ועניין! לדוגמה (VB): הגדרה:
Public Class Class1 Private mX As Integer Public Property X() As Integer Get Return mX End Get Set(ByVal Value As Integer) mX = Value End Set End Property End Class
ושימוש:
Public Shared Sub Main() Dim cl As Class1 cl.X = 5 End Sub