永发信息网

c#的自动实现属性是什么意思

答案:3  悬赏:0  手机版
解决时间 2021-04-01 00:53
  • 提问者网友:自食苦果
  • 2021-03-31 00:36
c#的自动实现属性是什么意思
最佳答案
  • 五星知识达人网友:玩世
  • 2021-03-31 02:01
public string str { get; set; }
相当于以下代码
private string _str;
public string str
{
get { return _str; }
set { _str = value }
}

将一个域提升为属性,以后可以对这个属性进行扩展,加上有效性校验之类的代码。请参考资料参考资料:http://blog.csdn.net/maybehelios/article/details/2910589
全部回答
  • 1楼网友:何以畏孤独
  • 2021-03-31 04:07
含义就像楼上写的那样。好处就是...你不觉得get;set里要写实现那真是非常的烦吗?于是...编译器给自动实现了,不用每次都写了,烦得要死,估计微软的人也是这么想的。
  • 2楼网友:轮獄道
  • 2021-03-31 02:55
这样写可以自动实现了属性的访问器,快速生成属性。
当属性只需要单纯的读写访问时使用。两外,有些特别属性也可以快速实现:
只读属性:public String Str{get;private set;}
只写属性:public String Str{set;private get;}
当属性是派生属性或者要做访问控制的时候,就不能如此使用了。这个时候用访问器:
public int Salary
{
get
{ //工资不可以随便让人看,得有权限
if(Authorization.Check(visitor))
return _salary;
throw new NotAuthorizeException();
}
set{...}
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯