本章要点

主题要点
类和接口定义类用 class 关键字定义,接口用 interface 关键字定义。可以使用 publicinternal 关键字来定义类和接口的可访问性,类可以定义为 abstractsealed,以便控制继承性。父类和父接口在一个用逗号分隔的列表中指定,放在类或接口名和一个冒号的后面。在类定义中,只能指定一个父类,且必须是列表中的第一项。
构造函数和析构函数类自动带有默认的构造函数和析构函数的实现代码,我们很少需要提供自己的析构函数。可以使用可访问性、类名和可能需要的任何参数来定义构造函数。基类的构造函数在派生类的构造函数之前执行,使用 thisbase 构造函数初始化器关键字,可以控制类中这些构造函数的执行顺序。
类库可以创建只包含类定义的类库项目。这些项目不能直接执行,而必须通过客户代码在可执行程序中访问。VS为创建、修改和测试类提供了各种工具。
类系类类可以组合为系列,以提供公共的操作或共享公共特性。为此,可从共享的基类(可以是抽象的)中继承,或者实现接口。
结构定义结构的定义方式与类非常类似,但结构是值类型,而类是引用类型
复制对象复制对象时,必须注意应复制该对象包含的其他对象,而不是仅复制这些对象的引用。复制引用称为浅度复制,而完全复制称为深度复制。可以使用 ICloneable 接口作为一个框架,提供类定义中的深度复制功能。