第4章C#程序设计语言.ppt

4.9 抽象类 4.9.1 什么是抽象类 在类声明中使用abstract修饰符的类称为抽象类。抽象类具有以下特点: 抽象类不能实例化。 抽象类可以包含抽象方法和抽象访问器。 抽象类中可以存在非抽象的方法。 不能用sealed修饰符修改抽象类,这也意味着抽象类不能被继承。 从抽象类派生的非抽象类必须包括继承的所有抽象方法和抽象访问器的实现。 抽象类可以被抽象类所继承,结果仍是抽象类。 4.9.2 抽象方法 在方法声明中使用abstract修饰符以指示方法不包含实现的,即为抽象方法。抽象方法具有以下特性: 声明一个抽象方法使用abstract关键字。 抽象方法是隐式的虚方法。 只允许在抽象类中使用抽象方法声明。 一个类中可以包含一个或多个抽象方法。 因为抽象方法声明不提供实际的实现,所以没有方法体;方法声明只是以一个分号结束,并且在签名后没有大括号{}。 抽象方法实现由一个重写方法提供,此重写方法是非抽象类的成员。 实现抽象类用“:”,实现抽象方法用override关键字。 在抽象方法声明中使用static或virtual修饰符是错误的。 抽象方法被实现后,不能更改修饰符。 【例4.10】 分析以下程序的运行结果。 using System; namespace Proj7_4 { abstract class A //抽象类声明

文档评论(0)

1亿VIP精品文档

相关文档