以abstract修饰的类和方法叫抽象类(方法),抽象类不能实例化,抽象函数不能包含任何实现,例如:- public abstract class Demo
- {
- public abstract void abs1();
- public abstract void abs2();
- }
复制代码 抽象函数本身是virtual的,但无须显示申明,抽象类可以包含抽象函数,也可以包含非抽象函数,我们可以给上述抽象类加上一个非抽象方法:- public abstract class Demo
- {
- public abstract void abs1();
- public abstract void abs2();
- public void Say()
- {
- Console.WriteLine("这是抽象类中的Say方法");
- }
- }
复制代码 而若一个类中有抽象函数,则该类一定抽象类,非抽象类中不能包含抽象函数,若一个类继承字抽象类,则在未全部实现基类中的抽象方法之前,其也必须是抽象的,可以如下对上面的抽象实现:- public class demo:Demo
- {
- public override void abs1()
- {
- //
- }
- public override void abs2()
- {
- //
- }
- }
复制代码 注意:abstract成员也不能为私有。其他C#基础请看这里
|