网站设计有哪些,wordpress难不难,东道设计厉害吗,免费咨询做网站字段#xff0c;属性#xff0c;索引器#xff0c;常量都表示数据
字段
什么是字段
字段(field)是一种表示与对象或类型(类与结构体)关联的变量字段是类型的成员#xff0c;又称“成员变量#xff0c;写在类体里面与对象关联的字段亦称“实例字段#xff0c;表示某个对…字段属性索引器常量都表示数据
字段
什么是字段
字段(field)是一种表示与对象或类型(类与结构体)关联的变量字段是类型的成员又称“成员变量写在类体里面与对象关联的字段亦称“实例字段表示某个对象的状态与类型关联的字段称为“静态字段”由static修饰表示某个类类型的状态
字段的声明
参见C#语言定义文档尽管字段声明带有分号但它不是语句 语句在方法体里面字段的名字一定是名词
字段的初始值
无显式初始化时字段获得其类型的默认值所以字段“永远都不会未被初始化实例字段初始化的时机--对象创建时静态字段初始化的时机--类型被加载(load)时
只读字段
实例只读字段静态只读字段readonly修饰符 const必须在声明的同时初始化readonly可以在构造函数中初始化。
属性
什么是属性
属性(property)是一种用于访问对象或类型的特征的成员特征反映了状态属性是字段的自然扩展 从命名上看field更偏向于实例对象在内存中的布局property更偏向于反映现实世界对象的特征对外暴露数据数据可以是存储在字段里的也可以是动态计算出来的对内:保护字段不被非法值“污染属性由Get/Set方法对进化而来又一个“语法糖”--属性背后的秘密
属性的声明
完整声明--后台(back)成员变量与访问器(注意使用code snippet和refactor工具 )propfull 完整声明 简略声明--只有访问器(查看儿IL代码 ) 提供了更多的灵活性允许在访问属性时执行复杂的逻辑。prop 简略声明 多用于传递数据 适用于不需要额外逻辑的情况 动态计算值的属性动态计算CanWork值的属性 注意实例属性和静态属性属性的名字一定是名词只读属性--只有getter没有setter 尽管语法上正确几乎没有人使用“只写属性”,因为属性的主要目的是通过向外暴露数据而表示对象/类型的状态
属性与字段的关系
一般情况下它们都用于表示实体(对象或类型)的状态属性大多数情况下是字段的包装器(wrapper )建议:永远使用属性(而不是字段)来暴露数据即字段永远都是private或protected的
索引器( 概述 )
什么是索引器
索引器 (indexer) 是这样一种成员:它使对象能够用与数组相同的方式(即使用下标)进行索引索引器的声明
参见C#语言定义文档
注意:没有静态索引器
什么是常量
常量(constant) 是表示常量值(即可以在编译时计算的值)的类成员常量隶属于类类型而不是对象即没有“实例常量” 类型.常量 “实例常量”的角色由只读实例字段来担当注意区分成员常量与局部常量
常量的声明
各种”只读”的应用场景
为了提高程序可读性和执行效率--常量为了防止对象的值被改变---只读字段向外暴露不允许修改的数据--只读属性(静态或非静态)功能与常量有一些重叠当希望成为常量的值其类型不能被常量声明接受时(类/白定义结构体)--静态只读字段