博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C# 属性、索引
阅读量:6500 次
发布时间:2019-06-24

本文共 1527 字,大约阅读时间需要 5 分钟。

属性(property: 

public string Name{    get    {        return _name;    }    set    {        _name = value;    }}

 

简写为:

public string Name { set; get;}

 

索引器(index):

索引器为C#程序语言中泪的一种成员,它是的对象可以像数组一样被索引,使程序看起来更直观,更容易编写。

索引器和数组比较:

(1)索引器的索引值(Index)类型不受限制

(2)索引器允许重载

(3)索引器不是一个变量

索引器和属性的不同点

(1)属性以名称来标识,索引器以函数形式标识

(2)索引器可以被重载,属性不可以

(3)索引器不能声明为static,属性可以

 

要声明类或结构上的索引器,请使用this关键字,例如: 

public int this[int index] //声明索引器{// get and set 访问}

 

 索引器的修饰符有:new、public、protected、internal、private、virtual、sealed、override、abstract和extern。

 

当索引器声明包含extern修饰符时,称该索引器为外部索引器。因为外部索引器声明不提供任何实际的实现,所以它的每个访问器声明都由一个分号组成。

 

索引器的签名由其形参的数量和类型组成。它不包括索引器类型或形参名。如果在同一类中声明一个以上的索引器,则它们必须具有不同的签名。

 

索引器值不归类为变量;因此,不能将索引器值作为ref或out参数来传递。

 

索引必须是实例成员。

 

索引器使用示例:

using System;class IndexerRecord{    private string [] data = new string [6];    private string [] keys  = {        "Author", "Publisher", "Title",        "Subject", "ISBN", "Comments"         };          //注:程序中用了两种方法来索引:    //一是整数作下标,二是字符串(关键词名)作下标    public string this[ int idx ]    {        set        {            if( idx >= 0 && idx < data.Length )                data[ idx ] = value;        }        get        {            if( idx >= 0 && idx < data.Length )                return data[ idx ];            return null;        }    }    public string this[ string key ]    {        set        {            int idx = FindKey( key );            this[ idx ] = value;        }        get        {            return this[ FindKey(key) ];        }    }    private int FindKey( string key )    {        for( int i=0; i

 

转载地址:http://rdvyo.baihongyu.com/

你可能感兴趣的文章
html5新标签使用
查看>>
compass安装使用960 Grid System
查看>>
关于小数的精确运算
查看>>
20175203 2018-2019 实验五《网络编程与安全》
查看>>
Eureka服务注册中心
查看>>
轻松记账工程冲刺第二阶段10
查看>>
分离导航模块
查看>>
Lighttpd1.4.20源代码分析 笔记 状态机之错误处理和连接关闭
查看>>
php代码中使用换行及(\n或\r\n和br)的应用
查看>>
高考估分查分选志愿一键搞定_支付宝又操办了件人生大事
查看>>
HTML中的form表单有一个关键属性 enctype
查看>>
LeetCode-135-Candy
查看>>
制作RPM包
查看>>
beego数据输出
查看>>
DecimalFormat
查看>>
如何在同一系统里同时启动多个Tomcat
查看>>
Unix / 类 Unix shell 中有哪些很酷很冷门很少用很有用的命令?(转)
查看>>
java显示本地磁盘所有盘符,显示桌面路径
查看>>
对Cost (%CPU) 粗略的理解
查看>>
java file 操作之创建、删除文件及文件夹
查看>>