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

关于C#:abstract,virtual

2011-03-25 17:57 330 查看
一点理解和整理,记录下来以备查看:

abstract:

1.可以用于类,方法,属性,事件和索引指示器,表示其为抽象成员;

2.用abstract修饰的方法不可以声明主体;

3.只要类中有abstract修饰的成员,该类就必须声明为abstract的;

4.abstract修饰的类不可以实例化实体;

5.abstract类中的abstract成员可以由子类override;

6.abstract修饰符用来强制继承类必须实现某一成员。

virtual:

1.用virtual修饰的方法必须声明实体;

2.父类中的virtual成员可以由子类override;

3.用父类声明一个变量指向子类的实体,如果子类override了父类中的virtual方法,那么执行子类中的方法,否则执行父类中的方法

(如果父类中该方法不声明为virtual,也可以被子类继承,但是如果子类中有签名相同的方法,那么这里相当于子类隐藏了父类的该方法,

即相当于使用了修饰符new,这时用父类声明一个变量指向子类的实体,执行该方法将执行父类的方法);

4.用来实现多态。

override:

1.用来重写成员;

2.类中override修饰的成员,其子类中可以继续override。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: