C#继承可以分实现继承和接口继承,其中实现继承不支持多继承,接口继承支持多继承。
结构(struct)和类(class)都可以实现继承,其中结构默认是继承System.ValueType,而类是继承System.Object
类的继承可以继承字段,属性,和方法,继承的方式不支持私有(private)继承,默认都是公有的
如果父类和派生类拥有同一个方法体,编译器将会发出警告,提示是否是有意覆盖,如果不是则在前面添加new关键字。
派生类使用override继承父类的方法时,该方法必须要被声明成virtual或者abstract,否则也会发出错误
当一个类拥有abstract修饰的虚方法的时候,则该类也必须被修饰成abstract虚类,abstract修饰的方法其实也是虚方法,但是不需要添加virtual,否则编译器将会报出错误
abstract修饰的方法不能有实现,但是abstract修饰的类可以包含非抽象方法
sealed修饰的方法或者类将不能被继承或者实现