概述
前面,我们谈到了类中的一大成员:方法。今天我们来说说类中的另外三种成员:字段、属性和索引器
字段
字段就相当于类中的一个全局变量,用于存储数据。在类中一般定义为private私有的
属性
属性是用来封装字段的,它有get(读)、set(写)访问器,我们可以只设置一个属性的get访问器,也可以只设置它的set访问器。属性的本质是两个方法,我们通过反射就可以看到。因为是基础,所以这里就不再谈论反射的相当内容。属性可以设置字段的只读和只写。也可以从业务角度保护数据的有效性。我们来看一个例子:
class PropertiesDemo
{
static void Main()
{
Person per = new Person();
per.Age = 10;
Console.WriteLine(per.Age);
per.Age = -1;
Console.WriteLine(per.Age);
}
}
class Person
{
//私有字段
private int age;
//属性
public int Age
{
get
{
return age;
}
set
{
if (value < 150 && value > 0)
{
age = value;
}
}
}
}从结果中我们可以看出,当我们给Age赋值-1的时候是没有成功。从这个小例子中我们就可以体会到属性对字段的封装
索引器
索引器也叫有参属性,但它与属性又有一定的区别。索引器的字体必须用关键字this来定义。后加中括号索引参数
class IndexerDemo
{
static void Main()
{
Demo de = new Demo();
de[5] = 10;
Console.WriteLine(de[5]);
}
}
class Demo
{
int[] intarr = new int[10];public int this[int i]
{
get
{
return intarr[i];
}
set
{
intarr[i] = value;
}
}
}
非常的简单的例子哈,相信大家一看就会明白什么是索引器了。
好,今天的课程就到此吧,希望朋友们继续关注!谢谢
转载请注明:小曲 @ CSDN
最后
以上就是尊敬白开水为你收集整理的C#基础之字段(Field)、属性(Properties)和索引器(Indexer)字段属性索引器的全部内容,希望文章能够帮你解决C#基础之字段(Field)、属性(Properties)和索引器(Indexer)字段属性索引器所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复