1.继承的类型:实现继承(派生类继承基类)/接口继承.其中C#不支持多重实现继承,但是支持多重接口继承.
2.结构不支持实现继承,但是支持多重接口继承,类支持实现继承与多重接口继承.
3.实现继承,语法如下:
class MyClass:MyBaseClass{//functions and data members here}
如果类继承自基类也继承自接口,那么先继承基类,在继承接口,语法如下:
class MyClass:MyBaseClass,IInterface1,IInterface2{//functions and data members here}
如果我们创建类时,没有指定基类,那么C#编译器就会指定System.Object为基类.
4.虚方法,基类的函数声明为virtual,就可以在派生类中重写overrice该函数
5.隐藏方法:如果基类与派生类都包含签名相同的方法,但该方法没有分别声明为virtual与override,那么派生类方法就会隐藏基类方法.
6.调用函数的基类版本,语法示例:base.MethodName().
7.抽象类:C#允许把类和函数声明为abstract,即抽象类.抽象类不能实例化,抽象方法不能直接现实,必须在非抽象的派生类中重写.
8.派生类的构造函数:
假设我们有基类MyBaseClass,派生类MyClass,构造函数执行时,MyClass首先为期基类MyBaseClass运行构造函数,而MyBaseClass会为其基类System.Object运行构造函数.简单的理解为构造函数执行顺序总是自上而下,先调用基类的构造函数.