.net中的重载是什么?
导读:收集整理的这篇文章主要介绍了.net中的重载是什么?,觉得挺不错的,现在分享给大家,也给大家做个参考。.net中的重载,就是在同一个类中存在多个同名的方法,而这些方法的参数列表和返回值类型不同。值得注意的是,重载的概念并非面向对象编程的范畴...
收集整理的这篇文章主要介绍了.net中的重载是什么?,觉得挺不错的,现在分享给大家,也给大家做个参考。.net中的重载,就是在同一个类中存在多个同名的方法,而这些方法的参数列表和返回值类型不同。值得注意的是,重载的概念并非面向对象编程的范畴,从编译器角度理解,不同的参数列表、不同的返回值类型,就意味着不同的方法名。也就是说,方法的地址,在编译期就已经确定,是这一种静态绑定。
从示例中,我们总结重载的基本特征包括:
重载存在于同一个类中。
重载方法要求具有相同的方法名,不同的参数列表,返回值类型可以相同也可以不同(通过operator implicIT 可以实现一定程度的返回值重载,不过不值得推荐)。
.NET 2.0引入泛型技术,使得相同的参数列表、相同的返回值类型的情况也可以构成重载。
重载就是一些几个函数名字完全一样,但参数类型或个数不一样,实际调用将按参数类型来区分
比如,你现在有2个Max函数
1)
int Max(int i,int j){ }
2)
float Max(float i,float j){ }
在你的程序内
int i,j,k; k=Max(i,j); //将调用第一个Maxfloat x,y,z; z=Max(x,y); //将调用第二个Max
显然重载也具备多态性, 但这样多态是基于原代码级别的多态, 以上2个Max函数在文本下是同名,但经过编译后,内部名字是不一样,要加上参数类型等一些信息,这个过程叫名字连编, 在编译调用Max的源代码时,编译器根据调入时的参数选择调用正确的Max函数
以上就是.net中的重载是什么?的详细内容,更多请关注其它相关文章!
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: .net中的重载是什么?
本文地址: https://pptw.com/jishu/593516.html