第9章 类定义
9.1C#中类的定义
class MyClass
{}
Internal class MyClass //只有当前项目中的代码才能访问
{}
Public:公共的,可以由其他项目中的代码访问
Abstract:抽象的,不能实例化,只能继承,可以有抽象成员。
Sealed:密封的,不能继承
:后先接基类,再接口
接口的定义:interface IMyInterface{}
关键字abstract和sealed不能在接口中使用
9.2System.Object
9.3构造函数和析构函数
私有的构造函数:保证类不被实例化,一般用于有静态字段,方法的类。
构造函数初始化器:base指定基类实例化时调用的函数;this
Public MyDerivedClass(int i,intj):base(i)
{}
9.4 VS和VCE中的OOP工具
9.5类库项目
如果一个项目,只包括类,没有入口点,则成为类库。
Add reference, using lib
9.6接口和抽象类
类似处:可以由派生类继承的成员,不能直接实例化,可以声明他们的变量
不同之处:派生类只能继承一个基类;类可以使用任意多个接口。抽象类可以有抽象成员和非抽象成员。接口成员都必须在使用接口的类实现,没有代码体。抽象类主要用作对像系类的基类,共享某些特性;接口主要用于类,这些类在基础水平上有所不同,单可以完成某些相同的任务。
9.7结构类型