[C#1] 5-属性
时间:2022-04-23
本文章向大家介绍[C#1] 5-属性,主要内容包括1.无参属性、2.无参属性[索引器]、基本概念、基础应用、原理机制和需要注意的事项等,并结合实例形式分析了其使用技巧,希望通过本文能帮助到大家理解应用这部分内容。
1.无参属性
当定义一个属性时,编译器会在生成的托管模块中产生一下3项:
1:get访问器方法,定义get时才有;
2:set访问器方法,定义set时才有;
3:关于属性的元数据,这项总是存在;
这写元数据信息中包括一些标记和属性类型,并有一个对get和set访问器方法的引用,仅仅为属性和它的访问器之间提供了一层关联关系。CLR本身并不使用它们,在运行时仅需要访问器方法即可。采用属性的代码不应有过复杂结构和太长的执行时间。应该相应的简短快速,对于简单的get和set,JIT编译器会将代码进行内联[inline]处理优化。
2.无参属性[索引器]
索引器可以看作是对"[]"操作符的一种重载方式。CLR同样对待索引器和无参属性。默认产生get_Item、set_Item方法,其中Item是编译器默认的名称,可通过应用Sysetm.Runtime.CompilerDervices.IndexNameAttribute特性来改变默认的Item名字。System,String类型就是一个例子,String类型的索引器名字叫做Chars,而不是Item。
C#没有静态索引器[CLR支持],对CLR来说,属性和索引器仅仅是定义在类型中的一些方法而已
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- PHP的mysqli_sqlstate()函数讲解
- PHP Laravel中的Trait使用方法
- PHP CURL使用详解
- 解析Python 偏函数用法全方位实现
- PHP读取目录树的实现方法分析
- python suds访问webservice服务实现
- 使用Python-OpenCV消除图像中孤立的小区域操作
- PHP实现数组和对象的相互转换操作示例
- PHP单元测试框架PHPUnit用法详解
- PHP5中使用mysqli的prepare操作数据库的介绍
- php中的explode()函数实例介绍
- ThinkPHP5.0框架验证码功能实现方法【基于第三方扩展包】
- PHP的mysqli_rollback()函数讲解
- PHP中十六进制颜色与RGB颜色值互转的方法
- PHP后台备份MySQL数据库的源码实例