会员
周边
众包
新闻
博问
闪存
所有博客
当前博客
我的博客
我的园子
账号设置
简洁模式
...
退出登录
注册
登录
DotNet开发之路
博客园
首页
新随笔
联系
管理
订阅
C# 修饰符 学习整理
virtual
用于修饰方法、属性、索引器或事件声明,并且允许在派生类中重写这些对象。例如,此方法可被任何继承它的类重写。
调用虚方法时,将为重写成员检查该对象的运行时类型。将调用大部分派生类中的该重写成员,如果没有派生类重写该成员,则它可能是原始成员。
默认情况下,方法是非虚拟的。不能重写非虚方法。
virtual
修饰符不能与
static
、
abstract
和
override
修饰符一起使用。
除了声明和调用语法不同外,虚拟属性的行为与抽象方法一样。
*
在静态属性上使用
virtual
修饰符是错误的。
*
通过包括使用
override
修饰符的属性声明,可在派生类中重写虚拟继承属性。
abstract
修饰符可以和类、方法、属性、索引器及事件一起使用。在类声明中使用
abstract
修饰符以指示某个类只能是其他类的基类。标记为抽象或包含在抽象类中的成员必须通过从抽象类派生的类来实现。
抽象类具有以下特性:
抽象类不能实例化。
抽象类可以包含抽象方法和抽象访问器。
不能用
sealed
(C# 参考)修饰符修改抽象类,这意味着抽象类不能被继承。
从抽象类派生的非抽象类必须包括继承的所有抽象方法和抽象访问器的实实现。
在方法或属性声明中使用
abstract
修饰符以指示方法或属性不包含实现。
抽象方法具有以下特性:
抽象方法是隐式的虚方法。
只允许在抽象类中使用抽象方法声明。
因为抽象方法声明不提供实际的实现,所以没有方法体;方法声明只是以一个分号结束,并且在签名后没有大括号 (
{ }
)。
posted @
2009-07-16 18:42
zzh
阅读(
189
) 评论(
0
)
编辑
收藏
举报
会员力量,点亮园子希望
刷新页面
返回顶部
公告