英语里面的类Class是分类classification的词根,设计类的过程就是对信息进行分类。
封装
封装是定义类的重要原则,使用类的程序不必关系类内部如何工作。程序只需要创建类的实例并调用类的方法。
比如Console.WriteLine,我们不需要去了解Console类将数据如何输出到屏幕的复杂细节.这就是封装的意义.
这些复杂的细节是隐藏的,因此,封装有时也叫信息隐藏.
它实际有两个目的:
1.将方法和数据合并到类中,为了支持分类;
2.控制对方法和数据的访问,也就是控制类的使用.
…
…
定义并使用类
C#用class 关键字定义新类.
比如:
上面定义了一个Circle类,包含数据(圆的半径)和方法(Area计算圆的面积).
C#将类中的变量称为字段.
使用类
Circle c;//创建Circle变量
c = new Circle();//初始化
注意这里使用了new关键字,以前在初始化int或float时是直接赋值的:
int i;
i = 1;
但是类不能像以前那样赋值,涉及到"运行时"对类类型的变量的内存进行分配与管理的方式,这方面会在后面讲到,我们目前只需要知道使用new关键字将新建一个类的实例。
类的实例更通俗的说法就是对象
…
…
控制可访问性
Circle类目前没有任何实际用处,默认情况下,方法和数据封装到类中,它们是私有的,虽然能创建Circle对象,但是外界无法访问radius字段,也调用不了Area方法
比如:
但是我们可以用public和private关键字修改字段或方法的定义,决定它们是否能从外部访问.
下面对刚才的类进行修改
class Circle
{
private int radius;
public double