概念:抽象类是一种特殊的类,该类本身不提供已经实现的方法,只定义了所有子类共享的一般形式,至于实现方法的内容,则交给子类去填充。
抽象类与非抽象类(普通类)的区别
1、抽象类只能作为其他类的基类,不能直接被实例化,而且对抽象类不能使用new操作符。抽象类如果含有抽象的变量或值,则它们要么是null类型,要么包含了对非抽象类实例的引用。
2、抽象类可以包含抽象成员,但非抽象类中不可以包含抽象成员。
3、抽象类不能同时又是密封类,即abstract修饰符和sealed修饰符不能同时存在。
声明抽象方法时需要注意事项:
1、抽象方法必须声明在抽象类中
2、声明抽象方法时,不能使用virtual、static和private修饰符
当从抽象类派生一个非抽象类时,需要在非抽象类中重写抽象方法,以提供具体的实现,重写抽象方法时需要使用override关键字。