فیلد و پراپرتی در سی شارپ چیست؟
در این پست میخواهیم در رابطه با فیلد و پراپرتی در سی شارپ صحبت کنیم
هر کلاسی 4 عضو دارد: فیلد(field) ، پراپرتی(property)، متد (method) و ایونت (event).
فیلد: متغیری که در کلاس تعریف می شود فیلد نام دارد. بهتره فیلد از نوع private باشد.
private string _name;
Private string _family;
پراپرتی: بهتر است فیلد ها private باشند. پس چگونه به مقادیر آن دست یابیم؟ از طریق پراپرتی.
public string Name { set { return _name; } get { _name=value; } }
Public string Family { set { return _family; } get { _family = value; } }
دقیقا کار این پراپرتی ها چیست؟ مثلا فردی میخواهد مقدار _name را بداند اما این فیلد private است و دسترسی به آن ممکن نیست . پراپرتی از طریق کلمه ی کلیدی set که خودش شامل یک بدنه می شود، مقدار فیلد متناظرش یعنی _name را بر می گرداند. بدنه ی get مقدارجدیدی را به فیلد متناظر نسبت میدهد.
می توان پراپرتی داشت که فقط شامل get{} که read only نامیده می شود ویا فقط شامل set{} که write only نامیده می شود، باشد.
نمونه ای از پراپرتی read only:
public string ShowInfo { get {return string.Format("{0}{1}",this._name,this._family) } }
منظور از this کلاس جاری می باشد. اگر ماوس خود را روی کلمه this نگه دارید خودتان متوجه می شوید.