字段(域)
可以把字段理解为类级别的变量、常量,用以存储该类的实例的相关数据。
public class Date { private int _year; private int _month; private int _day; }
大多数情况下字段的访问修饰符均为 private,如果修饰符为 public,那么在类之外都可以访问该字段,但不建议这样做,应该通过属性或方法来访问类中的数据。
属性
属性将类中的数据暴露给类外。
public class Date { private int _year; private int _month; private int _day; public int Year { get { return _year; } set { _year = value; } } public int Month { get { return _month; } private set { _month = value; } } public int Day { get { return _day; } } }
我们给 Date 类定义了三个属性,分别为 Year、Month、
Day。get 中使用关键词 return,set 中使用关键词 value。
Date date = new Date(); date._year = 2008; //错误,_year 为 private date.Yonth = 2008; //正确 date.Day = 3; //错误,Day 属性不可写
说明,上述这样设计一个日期类属性的读写可能是不合理的,我们这样做只是为了解释属性的具体用法。
再看一个例子。
public int PageSize
{
get
{
return _pageSize;
}
set
{
if (value <= 0)
{
_pageSize = 20;
}
else
{
_pageSize = value;
}
}
}
这是一个分页类中的页大小属性,表示一页显示多少条记录。可以看到,我们在设置 PageSize 属性值时,如果值小于等于 0,则会以默认值 20 代替。
索引
使用