《程序员的第一年》---------- virtual方法和abstract方法(学习笔记)
2013-05-07 13:50
267 查看
在C#的学习中,容易混淆virtual方法和abstract方法的使用,现在来讨论一下二者的区别。二者都牵涉到在派生类中与override的配合使用。
一、Virtual方法(虚方法)
virtual 关键字用于在基类中修饰方法。virtual的使用会有两种情况:
情况1:在基类中定义了virtual方法,但在派生类中没有重写该虚方法。那么在对派生类实例的调用中,该虚方法使用的是基类定义的方法。
情况2:在基类中定义了virtual方法,然后在派生类中使用override重写该方法。那么在对派生类实例的调用中,该虚方法使用的是派生重写的方法。
二、Abstract方法(抽象方法)
abstract关键字只能用在抽象类中修饰方法,并且没有具体的实现。抽象方法的实现必须在派生类中使用override关键字来实现。
http://www.5ufanli.net
一、Virtual方法(虚方法)
virtual 关键字用于在基类中修饰方法。virtual的使用会有两种情况:
情况1:在基类中定义了virtual方法,但在派生类中没有重写该虚方法。那么在对派生类实例的调用中,该虚方法使用的是基类定义的方法。
情况2:在基类中定义了virtual方法,然后在派生类中使用override重写该方法。那么在对派生类实例的调用中,该虚方法使用的是派生重写的方法。
二、Abstract方法(抽象方法)
abstract关键字只能用在抽象类中修饰方法,并且没有具体的实现。抽象方法的实现必须在派生类中使用override关键字来实现。
http://www.5ufanli.net
相关文章推荐
- 《程序员的第一年》----------virtual方法和abstract方法(学习笔记)
- C#.NET学习笔记---C#中方法覆盖时override和new的比较,abstract和virtual的比较(含C#多态的实现)
- [原]Java程序员的JavaScript学习笔记(5——prototype和Object内置方法)
- 【KK学习笔记】c# 虚方法 virtual 、 重写方法 override 、new 的使用与理解
- Java菜鸟学习笔记--面向对象篇(十一):&abstract方法/类
- Java学习笔记之抽象(abstract)与模板方法设计模式
- Java程序员的JavaScript学习笔记(9—— jQuery工具方法)
- [原]Java程序员的JavaScript学习笔记(9—— jQuery工具方法)
- 设计模式简单学习(1)--虚方法(virtual)和抽象方法(abstract)的区别
- Java程序员的JavaScript学习笔记(5——prototype和Object内置方法)
- C#方法的前缀 abstract virtual override static sealed
- 31 天重构学习笔记22. 分解方法
- java学习笔记(六)——String类的常用方法
- LungoJS框架学习笔记——核心方法
- 【C语言学习笔记】字符串拼接的3种方法 .
- C#学习笔记:控件BackColor属性与ForeColor的使用方法
- 【python学习笔记】获取当前日期前后N天或N月的日期的相关方法
- IOS学习笔记2—Objective C—类、属性、方法
- 黑马程序员—C学习笔记—三种方法实现两数交换
- Java学习笔记18. Java中的构造方法