第3章C#面向对象设计
对于结构的使用需要注意以下几点: 1.结构不能包含显式的无参数构造函数。 2. 显式定义的构造函数必须带参数。 3.对于结构中的实例字段成员,不能在声明时赋值初始化。 4.在声明了结构类型后,可以使用new运算符创建结构对象。如果不使用new,那么在初始化所有字段前,字段保持未赋值状态且对象不可用。 5.结构是值类型,类是引用型。 6.结构不支持继承,但可继承接口。 以下任何一条,就应该使用类: 1.需要派生其他类型。 2.需要继承。 3.该类型作为方法参数传递。因为结构是值类 型,每次调用都要创建结构的副本。但结构放在数组中例外。 4. 该类型用作方法的返回类型。 3.7 委托与事件 委托是一种可以指向方法的引用,可以理解为一种函数指针,是类型安全的。它类似于C++中的函数指针,通过对于方法特征和返回值类型的声明,封装了具有相同特征和返回类型的方法。 使用委托需要三个步骤: 声明委托类型 创建委托实例 向委托实例注册方法 委托 Multiply(int,int) { …. } Divide(int,int) { …. } 在运行时确定调用哪种方法 委托和方法必须具有相同的签名 --- public delegate Call(int n1, int n2); --- class Delegates { // 委托定义 public delegate int Ca
原创力文档

文档评论(0)