c#中abstract与virtua、overridel的用法

1、abstract 抽象方法 ,virtual 虚方法 ,override 重载函数

父类A.m() 子类B.m()   abstract的方法父类可以不实现,让子类去重写(重写=overwrite,不过一般不会提到).父类如果存在abstract方法,那么必然是抽象类,必然不能直接实例化(比如 A a=new A()是不行的),必须由子类去继承并且重写所有抽象方法后再去使用.比如:A a=new B().

2、子类必须要实现基类的抽象方法,而不用去实现虚函数,如果没override虚函数,则执行基本的虚函数

3、一般的重载.这个跟继承没有多大关系.普通的类自身不用写什么关键字就能实现.有着同样的名字,但是调用的时候根据参数的不同,编译器选择合适的来使用。

4、new关键字也可以隐藏父类的相同方法。

 

原文地址:https://www.cnblogs.com/gis-sky/p/3314148.html