您的位置:首页 > 编程语言 > C#

C# 抽象类与抽象方法的作用与实例

2013-01-07 09:21 274 查看
在C#中,允许把类和方法声明为抽象类与抽象方法,具体的声明方法是在类名或方法名前加上abstract关键字。

那么我们什么时候应该用抽象类呢?

如果一个类设计的目点是用来被其它类继承的,它代表一类对象的所具有的公共属性或方法,那个这个类就应该设置为抽象类。

抽象类与其它的类有什么区别呢?

抽象类是不能够被实例化的。如果一个类中包含有抽象方法,那么这个类一定要声明为抽象类。同时,抽象方法一定需要在子类中重写,让抽象方法成为一个具体的实实在在的方法。

比如,我们要声明一个动物类animal,然后有其它的类Cat(猫),Dog(狗)等具体的类来继承它,那么这个动物类就应该声明为抽象类。因为animal只是一个名词,不代表任何具体的对象,它只是代表所有动物所拥有的共同特征,所以animal类是根本不可能被实例化的。同时,如果所有动物都必须声明"叫"这样一个方法的话,那么,我们可以在animal类中声明一个抽象方法shout(),因为抽象方法是必须在子类中重写的,所以这就限制了所有继承自animal类都必须重写shout()方法。

实例:

声明Animal类

abstract class Animal //声明Animal为抽象类

{

……

protected abstract void Shout(); //声明Shout()方法为抽象方法,那么所有继承Animal类的子类都必须重写Shout()方法

}

声明Dog类,继承自Animal类

class Dog:Animal

{

protected override vod Shout()

{

response.write("汪");

}

}

本文来源于:http://www.lmwlove.com/ac/ID855
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: