VB和C#的自动实现属性
来源:互联网 发布:淘宝魔盒 编辑:程序博客网 时间:2024/06/15 08:01
C#在3.0版本中添加了自动实现属性,但是当时Visual Basic还没有与之匹配的特性。即将发布的.NET 4.0版本中,VB在该领域迎头赶上,但却有所不同。C#中,自动实现属性可以这样编写,如下所示: Visual Basic则需要关键字Property,这表示它不需要get/set来对字段进行区分。但是,VB中的自动实现属性对字段只有一个标记。 对于VB和C#,该属性都自动支持一个私有字段。在C#中,这个成员有一个自动生成的名称,例如:“<FirstName>k__BackingField”。不用说,这个字段不能用一般的C#语法进行访问。Visual Basic则缺乏这种创新性,它只不过在该属性名前添加了一个下划线。所以,如果属性名为“FirstName”,那么对应的私有字段名为“_FirstName”。
直接访问该支持字段让很多事情变得都有可能。逻辑上来说,开发人员可以把该属性标志为ReadOnly并在构造函数中设置它的值。然而,那并不可选。
尽管它有一定的局限,但实际上C#的灵活性更好。你可以标志set为private或protected,和访问支持字段一样有效。如下所示: 两种语言的局限在于它们仍没有任何针对不可变对象的工具。如果想让对象的属性和字段都为只读并可在构造函数中进行设置,那么我们仍然需要像在.NET 1.0那样编写代码。
直接访问该支持字段让很多事情变得都有可能。逻辑上来说,开发人员可以把该属性标志为ReadOnly并在构造函数中设置它的值。然而,那并不可选。
尽管它有一定的局限,但实际上C#的灵活性更好。你可以标志set为private或protected,和访问支持字段一样有效。如下所示: 两种语言的局限在于它们仍没有任何针对不可变对象的工具。如果想让对象的属性和字段都为只读并可在构造函数中进行设置,那么我们仍然需要像在.NET 1.0那样编写代码。
- VB和C#的自动实现属性
- VB.NET自动实现的属性
- C#编程之自动实现的属性
- C#自动实现的属性(从C#3.0引入)
- C#中属性和自动属性的区别
- 自动实现的属性
- 实现C#和VB.net之间的相互转换(马辉)
- 实现C#和VB.net之间的相互转换
- 实现C#和VB.net之间的相互转换
- vb和C#的区别
- 【C#】—vb和c#实现对比
- 用 VB 实现表单的自动提交
- 用VB实现的QQ自动登录器
- 用 VB 实现表单的自动提交
- C# 反射对象的字段属性和实现的接口
- VB自动填表问题 bs自动填表的实现
- 越来越人性化的.Net C#,VB.Net语言特性:自动属性,对象初始化器和集合初始化器
- C# 3.0 的自动属性(Automatic Properties)
- CodeModel的范例:一个为项目所有相关类添加工厂方法的AddIn
- 查询依赖包
- C#中for和foreach循环的性能
- PostgreSQL 常用维护操作(二)
- vmware连接usb设备
- VB和C#的自动实现属性
- List.Sort以及快速排序
- 2011ACM上海邀请赛A题(Avaricious Maryanna)----模拟+大数乘法
- OLAP及其多维数据分析
- C# 之不安全代码(1)
- 嵌入式linux(内核为linux 2.6.30.4)开发中遇到的一些问题解决方法
- 让C#中的0等于0
- 嵌入式系统开发环境简介
- C#中用鼠标移动页面功能的实现