博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C#中虚方法的使用
阅读量:6608 次
发布时间:2019-06-24

本文共 718 字,大约阅读时间需要 2 分钟。

  hot3.png

父类:   

public class A    {        public void FunctionA()        {            FunctionB();        }        public virtual void FunctionB()        {        }    }    public class B : A    {        public void main()        {            B b = new B();             b.FunctionA();        }        public override void FunctionB()        {            //具体实现        }    }
FunctionA为轮询方法,其中有公告的方法实现,FunctionA根据条件调用FunctionB,但是FunctionB中的业务逻辑不确定,根据具体实现场景不同,如可能是新建、删除等,所以将FunctionB定义为virtual,子类B继承父类A,并override虚方法FunctionB,这样在b.FunctionA()时,先执行a.FunctionA(),再执行b.functionB(实现了虚方法的具体逻辑),这样就可以根据不同的子类场景编写不同的FunctionB的处理逻辑

犯二的时刻:刚开始实例化的是A,即A a=new A(),执行a.FunctionA(),始终进入不了override的方法体内

转载于:https://my.oschina.net/ijyun/blog/172679

你可能感兴趣的文章
Vc中API函数 ShellExecute用法
查看>>
流策略
查看>>
nginx 自动封 ip 过高连接
查看>>
零基础开始“网络工程师之路”--索引目录表(持续更新....)
查看>>
php版本微信js-sdk支付接口类例子
查看>>
学习springcloud的Eureka。记录其中遇见的问题(参考纯洁的微笑)
查看>>
Android Data Binding(二)
查看>>
陈松松:推荐制作高清视频必备的3个工具
查看>>
陈松松:从新手到高手学习视频营销的三个步骤
查看>>
Mandriva基础知识之6:Ruby1.9.2安装
查看>>
JavaAPI详解系列(5):String类(5)
查看>>
javaScript实现焦点轮播图界面效果(三)
查看>>
Exchange powershell
查看>>
java学习,模板的理解
查看>>
博为峰Java技术文章 ——JavaSE Swing JFileChooser组件Ⅱ
查看>>
esxi虚机Windows server 2012忘记密码解决办法
查看>>
微信小程序的视图容器—swiper
查看>>
(SQL)比较一个 (SQL)比较一个集合是否在另一个集合里存在的方法
查看>>
创业---学习思想里程----漫漫道路
查看>>
oracle中几个概念
查看>>