温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

C#自动属性有什么作用

发布时间:2021-12-02 11:10:23 来源:亿速云 阅读:240 作者:iii 栏目:编程语言

本篇内容主要讲解“C#自动属性有什么作用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C#自动属性有什么作用”吧!

总体来说,Visual Studio 2008和.NET 3.5是建立在.NET2.0核心的基础之上,.NET2.0核心本身将不再变化(如果不了解.NET2.0的朋友,请参看MSDN或者一些经典的书籍),C# 3.0新语言特性在.NET2.0基础上进行了改进,这些改进的功能可以大大简化我们编写程序。

C# 3.0新语言特性和改进包括:
◆自动属性(Auto-Implemented Properties)
◆隐含类型局部变量(Local Variable Type Inference)
◆匿名类型(Anonymous Types)
◆对象与集合初始化器(Object and Collection Initializers)
◆扩展方法(Extension Methods)
◆Lambda表达式和Lambda表达式树 (Lambda Expression and Lambda Expression Trees)

C#自动属性(Auto-Implemented Properties)

C#自动属性可以避免原来这样我们手工声明一个私有成员变量以及编写get/set逻辑,在VS2008中可以像下面这样编写一个类,编译器会自动地生成私有变量和默认的get/set 操作。你也可以分别定义get和set的“protected”等访问级别。

在.Net2.0框架下,我们可以这样写一个User类:

public class User  {  private int _id;  private string _name;  private int _age;  public int Id  {  get { return _id; }  set { _id = value; }  }  public string Name  {  get { return _name; }  set { _name = value; }  }  public int Age  {  get { return _age; }  set { _age = value; }  }  }

现在,可以这样简化:

public class User  {  public int Id { get; set; }  public string Name { get; set; }  public int Age { get; set; }  }

像上面这样的空的get/set属性的话,它会自动为你在类中生成一个私有成员变量,对这个变量实现一个公开的getter 和setter。我们可以使用.NET开发环境所提供的ildasm.exe(IL代码反汇编器)工具来分析程序集或者模块的内容。

到此,相信大家对“C#自动属性有什么作用”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI