9.4 类的成员

从级别来分,类的成员包括静态成员和实例成员。静态成员是类级别,不属于类的实例,而实例成员则属于类的实例(对象)。

从功能来分,类的成员包括字段、属性、方法、索引器、构造函数等,其中字段属于数据成员,方法属于函数成员。

表9-1是类所能包含的各种成员。

9.4 类的成员 - 图1

9.4.1 字段

字段用于存储类所需要的数据。例如,一个类(汽车)可能有三个字段:速度、方向、行驶里程数(当然还可能有很多其他属性,我们此处只是举例说明,尽量将它简化而已)。如图9-3所示。

9.4 类的成员 - 图2

图 9-3 汽车类

声明一个字段时,只需要说明如下3个要素即可:

❑访问级别

❑字段的类型

❑字段名称

下面我们提供一个示例供读者参考,如代码清单9-4所示。

代码清单9-4 字段


class Car

{

public double speed;

protected string direction;

private double distance;

}


可以使用点运算符访问对象中的字段,如下:

对象[1]名.字段名

现在,我们通过代码清单9-5进行示例说明。

代码清单9-5 为字段赋值


class ClassExample

{

public static void Main()

{

Car car=new Car();

//为字段赋值

car.speed=10f;

//获取字段的值

Console.WriteLine(“汽车的速度为:{0}”,car.speed);

}

}


读者可能已经注意到了,Car类有三个字段:speed、direction、distance,这里仅仅对speed进行了赋值和读取操作,那么能否也对另外两个字段进行同样的操作呢?读者可以自行试验,答案是否定的。原因如下:

❑direction字段的访问级别为protected,属于保护级别,只有使用该类作为基类的派生类型才能访问;

❑distance字段的访问级别为private,属于私有级别,只有声明它的类或结构才能访问。

关于访问级别的更多内容,请参考9.9节。

注意,这里讲的字段均为实例字段,和实例字段相对的是静态字段,如下面内容所述。

[1]对象,不做特别说明均指类的实例,下同。