9 abstract 和 Virtual 之间的差别
之间 差别 Virtual abstract
2023-09-11 14:21:00 时间
(1) abstract方法没有详细的实现。同一时候必须被覆写
(2) 虚(Virtual)方法能够没有详细的实现,也不一定必须覆写(虚方法定义时,能够没有详细的实现代码,可是必须创建方法体:即必须有方法的左右花括号)。(3) 抽象方法不能够使用base.method()方式调用,可是虚方法是能够的
//定义一个抽象方法 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace MVATwentyQuestions { abstract class absClass { public abstract void DisplayValue(string value); } } //在抽象类的子类中覆写抽象方法 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace MVATwentyQuestions { class absClassInherited : absClass { override public void DisplayValue(string value) { Console.WriteLine(value); } } } //定义一个虚方法 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace MVATwentyQuestions { class virtClass { public virtual void DisplayValue(string value) { Console.WriteLine(value); } } } //在子类中覆写虚方法 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace MVATwentyQuestions { class virtClassInherited : virtClass { public override void DisplayValue(string value) { Console.WriteLine(value.ToUpper()); } } }
相关文章
- 进程,线程与多核,多cpu之间的关系
- 计算机硬盘大小转换(B,KB,MB,GB,TB,PB之间的大小转换)
- 【算法】【递归与动态规划模块】字符串之间转换的最小代价
- NodeVisitor的使用-遍历Geode节点并在它与父节点之间添加一个LOD节点
- CvMat、Mat、IplImage之间的转换详解及实例
- TensorFlow 度量张量和张量或者和零之间的误差值
- 比较分析 Spring AOP 和 AspectJ 之间的差别
- 力扣解法汇总1026. 节点与其祖先之间的最大差值
- ZeroMQ实例-使用ZeroMQ进行windows与linux之间的通信
- 服务对外提供接口以供不同站点之间使用:Spring Cloud Feign使用记录及携带token请求
- 使用 FocusScopeNode 在 TextFormFields 之间轻松移动焦点
- 怎么实现Docker容器之间通讯
- weex-自定义module,实现weex在iOS的本地化,js之间互相跳转,交互,传值(iOS接入weex的最佳方式)
- Jquer学习之jQuery(function(){})与(function(){})(jQuery)之间的区别
- 我的生命中可以没有你,但那将是平凡的一生和绚烂的一生之间的差别
- WebSocket和SocketIO是什么?它们之间的关系