博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
不忘本~抽象类,抽象方法,虚方法
阅读量:6999 次
发布时间:2019-06-27

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

抽象类一般在开发中用来当某个功能的父类,它把子类公有的信息提炼出来,生成一个类,在抽象类中
可以有抽象方法,它必须为子类去实现,也就是说,抽象类本身还不能决定抽象方法的功能,所以,由
它的具体子类去实现它;相对就的还有虚方法,它可以由类本身实现,也可以由子类根据自己的逻辑去
复写基类的这个方法,下面举个例子来说明这一切:
 
///     /// 抽象基类    ///     abstract class Person    {        public abstract void DisplayName();        protected virtual void Info() {            Console.WriteLine("人类呀");        }    }    ///     /// 抽象类中的抽象方法子类必须去实现    /// 抽象类中的抽象方法不能是private,因为它定义目的是为了让子类去复写它    /// 静态方法不能作为抽象方法,相似的,接口中不能有静态成员    /// 相似的,虚方法在基类中可以直接被实现,而在子类中也可以被复写    ///     class Man : Person    {        public override void DisplayName()        {            Console.WriteLine("男人");        }        protected override void Info()        {           // base.Info(); //使用基类中的方法,但它可以有自己的逻辑            Console.WriteLine("人类中的男人呀");        }    }

转载地址:http://aievl.baihongyu.com/

你可能感兴趣的文章
Kubernetes日志分析利器:Elassandra部署使用指南
查看>>
Qt智能家居应用开发:硬件设备实现智能网络配置时候,如何使用第三方smart config 库...
查看>>
微软在C# 8中引入预览版可空引用类型
查看>>
Docker4Dev #7 新瓶装老酒 – 使用 Windows Container运行ASP.NET MVC 2 + SQLExpress 应用
查看>>
【关于数组】JavaScript常用的API
查看>>
Airbnb如何简化1000多位工程师的Kubernetes工作流程?
查看>>
2019年软件测试现状调查
查看>>
深度解读:如何评估软件测试工作的价值?
查看>>
BitBucket Cloud新增Git大文件存储Beta支持
查看>>
Java面试36题精讲:Oracle首席工程师帮你搞定BAT面试
查看>>
有赞搜索系统的架构演进
查看>>
首批九个建议加入EE4J的项目
查看>>
微服务架构会和分布式单体架构高度重合吗
查看>>
5G一周热闻:中国5G芯片关键材料获突破,华为首款折叠屏手机亮相
查看>>
用户故事 | 刷算法面试题的4种思考方式
查看>>
slide3D插件版本更新
查看>>
基于 Bitbucket Pipeline + Amazon S3 的自动化运维体系
查看>>
Oracle加入CNCF,发布Kubernetes on Oracle Linux以及Terraform Kubernetes Cloud Installer
查看>>
Google Chrome 53 Beta引入影子(Shadow)DOM V1
查看>>
混沌实践访谈:混沌工程和系统可观测性密不可分
查看>>