C#中虚方法重载
发布日期:2021-06-30 19:11:54
浏览次数:2
分类:技术文章
本文共 912 字,大约阅读时间需要 3 分钟。
在C#中,进行虚方法的重载有些体会,现与大家分享。 首先请大家看看下面的例子, using System; abstract public class contact { public virtual string prinf() { return ("这是虚方法"); } } public class class1:contact { public string prinf() { return ("这是新的方法");//但这会出现编译警告,因为已经从contact那继承了一个同名方法 } } 想要通过编译,只需将prinf的声明改为 public override string prinf() 或 public new string prinf() 但是这两种声明方式是有区别的, 请看下面的例子: using System; abstract public class contact { public virtual string prinf() { return ("这是虚方法"); } } public class class1:contact { public override string prinf() { return ("这是新的方法"); } } public class class2:contact { public new string prinf() { return ("这是另一个新的方法"); } } public class text { public static void Main() { contact [] contacts=new contact [2]; contacts[0]=new class1; contacts[1]=new class2; foreach(contact ct in contacts) { Console.WriteLine(ct.printf); } } } 最后我们看到的结果是 这是新的方法 这是虚方法 而没有看见“这是另一个新的方法”,这是因为class2没有重载虚方法,而是重新定义了一个方法! 这就是两者的区别!!!转载地址:https://linuxstyle.blog.csdn.net/article/details/1539919 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
初次前来,多多关照!
[***.217.46.12]2024年04月28日 09时57分30秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
信号量机制
2019-04-30
临界资源与临界区
2019-04-30
matlab中uint8,double,im2double和im2uint8的区别
2019-04-30
数字图像处理总复习
2019-04-30
图像去噪(包含修正的阿尔法均值滤波及通用滤波方法代码)
2019-04-30
SVM进行人脸检测
2019-04-30
C++学习笔记
2019-04-30
图像处理学习笔记
2019-04-30
Machine Learning Onramp on MATLAB 学习笔记
2019-04-30
Machine Learning with MATLAB 1.1 to 2.2
2019-04-30
Learning DSP with MATLAB
2019-04-30
用MATLAB实现m序列的生成(MATLAB 2021a适用)
2019-04-30
MATLAB函数备忘(定期更新)
2019-04-30
13行MATLAB代码实现网络爬虫 爬取NASA画廊星图
2019-04-30
MATLAB指定路径保存图片方法
2019-04-30
Python一键获取微信推送封面图
2019-04-30
油猴脚本:微信推送浏览功能拓展
2019-04-30
JavaScript DOM对象操作详解
2019-04-30
JavaScript 表单操作与MD5加密
2019-04-30
JAVA学习笔记4 - 循环与分支结构
2019-04-30