• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

.NET/C# 中关于属性(Property)的两个小知识点

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

1:类似于这样的代码:

public class Car
{
  private string name;
  public string Name
  {
  get{return name;}
  set{name=value;}
  }
...
}

 

要用自动属性:


public class Car
{
  public string Name{get;set}
...
}

 

在这儿使用Property,而不是仅仅使用public 成员变量的好处在于:

(1):维持了封装原则,不暴露公共变量给外界的习惯;

(2):便于以后可能会有在里面进行控制逻辑的添加。或者以后可以便于将get , set 中的某一个读或写的方向关闭;

(3):在使用元数据时,编译器只认属性不认成员变量。举例,ParseChildren(true, "MemberName")   (这点我是网上看来的,其实我没看懂是什么意思。。。暂时先列在这儿);

(4):在绑定数据的时候,属性有特殊的用处(这个我也没怎么理解。。。)。

 

2: 自动属性无法指定默认值,如果要达到这种效果,只能在构造函数中对其进行初始化!

     另外,如果要指定自动属性,必须同时指定 get;set; 缺一不可。会编译通不过。

  public string Name {get;set;}  这样才行,

  public string Name { get; } 或 public string Name { set; } 都不行!

  那如果想自动属性,且外界只读或者只写怎么办呢?

  要这样写:

  public string Name { get; private set; }

  public string Name { private get; set; }

 

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C# 图片识别(支持21种语言)发布时间:2022-07-14
下一篇:
C#一些实用的,容易被遗忘的特性,经验和技巧发布时间:2022-07-14
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap