在Visual Studio 2010中,有不少特性能帮助大家更好,更快的完成开发工作。本文将介绍的是自动执行属性。
自动执行的属性能够让你迅速指定一个类的属性,不用写“Get”和“Set”这个属性的代码。当你为自动执行的属性写代码的时候,Visual Basic编译器自动创建一个私有字段存储这个属性的变量,此外还创建相关的“Get”和“Set”步骤。
采用自动执行的属性,一个属性(包括一个默认值)可以在一个单个的行中声明。下面的例子显示了三个属性的声明。
1: Public Property Name As String
<!--CRLF-->
2: Public Property Owner As String = "DefaultName"
<!--CRLF-->
3: Public Property Items As New List(Of String) From {"M", "T", "W"}
<!--CRLF-->
4: Public Property ID As New Guid()
<!--CRLF-->
一个自动执行的属性相当于一个属性值存储在一个私有字段中的属性。下面代码例子显示一个自动执行属性。
Property Prop2 As String = "Empty"
下面的代码例子显示以前自动执行属性例子的相等的代码。
1: Private _Prop2 As String = "Empty"
<!--CRLF-->
2: Property Prop2 As String
<!--CRLF-->
3: Get
<!--CRLF-->
4: Return _Prop2
<!--CRLF-->
5: End Get
<!--CRLF-->
6: Set(ByVal value As String)
<!--CRLF-->
7: _Prop2 = value
<!--CRLF-->
8: End Set
<!--CRLF-->
9: End Property
<!--CRLF-->
支持字段
当你声明一个自动执行属性的时候,Visual Basic自动创建一个名为“支持字段”的隐藏的私有字段 以容纳这个属性的值。这个支持字段名称是前面有一个加下划线(_)的自动执行的属性名称。例如,如果你声明一个自动执行的属性命名的ID,这个支持字段就命名为_ID。如果你包含一个名称也是_ID的你的类的一个编号,你就制造了一个命名冲突,Visual Basic将报告一个编译器错误。
这个支持字段还有下面的特点:
- 访问这个支持字段修饰符总是私有的方式,甚至当属性本身有不同的访级别(如公共的)的时候也是如此。
- 如果属性标记为共享,这个支持字段也是共享的。
- 为这个属性指定的属性不适用于这个支持字段。
支持属性可以从这个类中的代码访问以及从Watch window等调试工具访问。然而,这个支持字段在IntelliSense(智能感应)字补全列表中不显示出来。
初始化一个自动执行属性
能够用于初始化一个字段的任何表达式对于初始化一个自动执行属性都是合法的。当你初始化一个自动执行属性的时候,这个表达式将被评估并且传送到这个属性的Set步骤。下面的代码例子显示包括初始值的一些自动执行的属性。
1: Property FirstName As String = "James"
<!--CRLF-->
2: Property PartNo As Integer = 44302
<!--CRLF-->
3: Property Orders As New List(Of Order)(500)
<!--CRLF-->
你不能声明一个自动执行的属性作为一个Structure(结构)的一个成员。如果它标记为共享的,你才能初始化这个自动执行属性。
当你声明一个自动执行属性作为一个组数的时候,你可以指定明确的组数边界。然而,你可以使用一个组数初始化程序提供一个值,如下面的例子所示:
Property Grades As Integer() = {90, 73}
Property Temperatures As Integer() = New Integer() {68, 54, 71}需要标准语法的属性定义
自动执行的属性是很方便的,支持许多编程情况。然而,有一些情况你不能使用自动执行的属性,必须使用标准的或者扩展的属性语法。
如果你要做下列之情之一,你必须使用属性定义语法:
- 向一个属性的Get或者Set步骤增加代码,如在Set步骤中增加验证输入值的代码。例如,你也许在设定这个属性值之前验证一个字符串。这个字符串显示一个包含要求的数字数量的电话号码。
- 为Get和Set步骤指定不同的访问性。例如,你也许要Set步骤是私有的,让Get步骤是公共的。
- 创建只写或只读的属性
- 使用参数化属性(包括默认属性)。你必须声明一个扩展的熟悉以便为这个属性指定一个参数或者为Set步骤指定一个额外的参数。
- 在支持字段加入一个属性。
- 为支持字段提供XML注释。
扩展一个自动执行的属性
如果你必须要把一个自动执行的属性转变为包含一个Get或者Set步骤的扩展的属性,Visual Basic代码编辑器能够自动生成Get和Set步骤以及这个属性的“End Property”(结束属性)声明。如果你把这个光标放在属性声明后面的空白行中,输入一个G(代表Get)或者一个S(代表Set)并且按下ENTER键,这个代码就生成了。当你在属性声明结束时按下ENTER键的时候,Visual Basic代码编辑器自动生成Get或者Set步骤的只读和只写属性。
分享到:
相关推荐
Visual Studio 2022 visualSvn 插件 亲测可用 如果你下载慢,就可以来这边下载。官方的下载速度太慢,真的等的没有耐心 VisualSVN is a professional grade Subversion integration plug-in for Visual Studio. Key...
VisualStudio2022编程软件的使用详解参考.pdf
Visual_Studio_2008控件的应用详解,最详细的Visual Studio控件组件资料
本资源详细描述了在VS2010中如何配置CUDA,使其可以进行CUDA C编程。
《MFC图文并茂详解.doc》 《SCOM_MFC2.rar》 《serial_src.zip》 《SerialCom_YiHai_TEST-master.zip》 《SerialComSoftware_自写详细注释.rar》 《VC_MFC串口通信编程详解.pdf》 《VC++串口通信20个经典源码合集....
VisualStudio.net C#初学者必看,完全手册Visual C#开发技术详解中重要的章节
visual studio2008的Windows编程详解
完全手册Visual C# 2008开发技术详解
VisualStudio安装过程详解.pdf
跟我一起学Visual Studio 2005(18):Crystal Report篇之公式详解 (Level 200) 课程简介:公式是Crystal Report中不可缺少的一个部分,利用公式我们可以做很多自定义的计算和操作。本节课我们将针对公式进行详细介绍...
Visual Studio 2008安装过程详解.docx,本文档图文并茂的详细介绍了Visual Studio 2008的安装过程。
详细讲课了Visual Studio 2008提供了很多控件用于开发Windows应用程序,在本章中将介绍每一个控件的常用属性、方法、事件及其具体应用。同时,部分实例将界面设计和代码编写结合起来,开发出具有一定功能的Windows...
详细介绍工具Visual Studio 2008 的使用
VisualStudio2013编程软件的使用详解.docx
创建SQL Server 2005 UDFs步骤详解——遵照这些手动步骤或使用Visual Studio自动化该过程.pdf
VisualStudio和WindowsDriverKits驱动开发安装配置详解.pdf
详解Visual Studio 2005 上 AJAX(AjaxControlToolkit) 安装控件安装步骤。
Visual_Studio_2008控件的应用详解 适于开始学习Visual_Studio_2008的人
【ASP.NET编程知识】Visual Studio 2015 配置 Opencv3.2的图文详解.docx