C#中3种不同的重写方法之重写抽象方法

本文部分内容来源于书籍和网摘。

继承类继承自基类的构造器,“同时”具有基类的构造器主体所具有的功能和被继承的构造器主体中的功能,详见C#构造器的继承问题

https://blog.csdn.net/number1killer/article/details/81013630

但是,继承类继承自基类的构造器总是先执行调用基类的构造器,然后才会执行派生类构造器的代码。

那么在C#有没有什么办法,既让可以让一个方法继承自基类,但是又只执行派生类中的代码呢?

Abstract方法和override重写方法正是为此而设计的。下面一起来看一个实例:

 

重写(override)

是提供同一个方法的不同实现,这些方法相互关联,因为他们旨在完                               成“大致相同的”任务,只是不同的类用不同的方式。

也就是说,其实一个重写方法就是用于在继承类中实现一个被继承的类的成员。

因此不能重写静态方法,因为静态方法不具备多态性。

 

重写方法必须和虚方法必须具有:完全一致的名称;相同从参数类型/数量;相同的返回类型。

 

之前在《C#抽象类 abstract class 简介》

https://blog.csdn.net/number1killer/article/details/86673507

已经简单介绍过如何重写virtual方法,在这里就不再赘述了。

C#中3种不同的重写方法之重写抽象方法_第1张图片

你可能感兴趣的:(C#,方法和算法,C#编程实例)