关于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没有重载虚方法,而是重新定义了一个方法!
这就是两者的区别!!!
关于C#中虚方法重载的说明相关推荐
- java 返回值判断_在Java中判断方法重载的条件除了参数外,还可以通过返回值类型判断。_学小易找答案...
[单选题]若int x;且有下面的程序片断,则输出结果是() . for (x=3; x<6; x++) { printf((x%2) ? "##%d" : "** ...
- WCF中的方法重载 实现
操作重载 注意:WCF是不支持重载的,如果硬是写成重载的话,会抛出异常 InvalidOperationException,但是我们可以模拟! 原C#中的方法重载: interface ICalcul ...
- scala 方法重载_Scala中的方法重载
scala 方法重载 Scala方法重载 (Scala method overloading) Method overloading is a method that is redefined in ...
- [转载] Java Challengers#1:JVM中的方法重载
参考链接: Java中自动装箱和扩展的方法重载 欢迎来到新的Java Challengers博客!本博客致力于挑战Java编程中的概念.掌握它们,你将成为一名技术娴熟的Java程序员. 本博客中的技术 ...
- java方法重载和重载方法_Java中的方法重载
java方法重载和重载方法 The concept of Method Overloading in Java is where a class can have multiple methods w ...
- python方法重载_关于类:如何在Python中使用方法重载?
我尝试在python中实现方法重载: class A: def stackoverflow(self): print 'first method' def stackoverflow(self, i) ...
- c 语言中虚方法有什么作用是什么,虚函数的作用?
定义 定义:在某基类中声明为 virtual 并在一个或多个派生类中被重新定 义的成员函数[1] 语法:virtual 函数返回类型 函数名(参数表) {函数体;} 用途:实现多态性,通过指向派生类的 ...
- mybatis接口中的方法重载_MyBatis底层实现原理: 动态代理的运用
点击上方"Java知音",选择"置顶公众号" 技术文章第一时间送达! 作者:祖大俊 my.oschina.net/zudajun/blog/666223 一日小 ...
- TS中的方法重载,函数重载,构造器重载
什么叫重载 名字相同 ,参数类型不同 方法重载 方法重载在类中定义多个同名的方法,但是每一个同名的方法要求不同数据类型和不同参数 下面来实现一个方法重载 以ArrayList 为例 可以查看数据 可以 ...
最新文章
- SAP HUM 如何对一个HU做上架?
- Tomcat启动特慢之SecureRandom问题解决
- 方法论、方法论——程序员的阿喀琉斯之踵
- 浏览器了解(二)HTML解析过程
- 前端程序员最爱用的8款代码编辑器,你用哪款?
- ASP.NET MVC的过滤器笔记
- css现在还用浮动吗,css3-9 css中的浮动怎么使用
- matlab dct稀疏系数,Matlab DCT详解
- 百度SEO资源吧emlog模版全套源码
- shift 位置参数左移命令
- Docker从理论到实践(八)------Docker网络基础配置
- 关于java的http请求的工具类
- SSL认证之相关证书的生成
- qq游戏大厅 for linux,网友第一时间抢先评测:腾讯QQ Linux版
- WEB-互补色与对比色的计算与获取 (实用、赞)
- 解决:文件名太长删不掉
- 0024-华为OD机考:身高--体重排序
- 土木工程考研和计算机考研哪个,土木工程考研还是就业
- python 学习分享之简单的播放音乐1(playsound)
- android app权限_如何限制Android App权限
热门文章
- 大工13秋《计算机文化基础》在线测试1,大工13秋《计算机文化基础》辅导资料六...
- 交换机连接控制器_DELL MD3200I存储单双控制器的自由切换
- 浏览器和驱动版本对应关系
- 动态规划经典题目_动态规划经典题目:鸡蛋掉落(附视频讲解)
- 小度智能音响拆解 芯片_不拆不快:小度音箱拆解测评
- c语言 link找不到函数,link失败,找不到库函数'sqrtf',math.h的头文件已经包含...
- java泛型区间_JAVA 14(泛型)
- jsp mysql模板_jsp的分页查询的代码(mysql数据库)
- python方法与重载_python特殊方法和运算符重载(番外--重载)
- (编程解决)List和Hashtable都是可以存储数据的,可为什么有时选择List,有时需要Hashtable,这两个