高手讲讲类中方法的重载是什么意思?

zteclx 2007-01-29 10:15:29
在面向对象变编程中,类中的方法重载是什么意思?好象就是相同的方法名可以有不同的参数,不会混淆?就是方法的重载?
...全文
411 点赞 收藏 14
写回复
14 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
跃睿 2008-09-26
1、方法名必须相同
2、参数列表必须不相同,与参数列表顺序无关
3、返回值类型可以不同
定义:类中两个以上的方法,取得名字相同,只要使用的参数类型或者参数个数不同,编译器便知道在何种情况下调用那个方法,这就叫做方法的重载!
回复
桃子 2008-07-29
就是同方法名不同参数列表...

调用时系统根据你的参数不同.自动匹配相应的方法实现
回复
gnoodles 2008-07-25
学习到了很多
回复
viena 2007-01-29
比如已经在使用中的函数,需要增加功能,要加参数
如果直接加的话,很多原来调用旧函数的地方都不能用了
这时就可以写一个重载,让旧函数调用新函数,新增参数传入空即可
回复
frank198381 2007-01-29
简单地说就是同函数名,不同的输入参数。有很多.net中的累的方法都有重载。
回复
往往对一个方法进行重载的时候,在重载的方法里调用了另一个重载,这样觉得从效率上讲不合适了.但这是很一普便的现象.
所以我一般调用重载的方法的时候往往是调用参数最多的那个,这样觉得效率上会好些(虽然差别很小).
回复
个人觉得方法重载对调用者来说是一种"偷懒"行为,呵呵
回复
zteclx 2007-01-29
方法重载的用处大吗 ?
回复
liujia_0421 2007-01-29
比如Convert .ToString()方法就有36种重载的方法..

可以有不同的参数...

可以将一个int型的转成string,也同样可以将double..转成string....

根据你的需要,来选择不同的重载方法..
回复
zteclx 2007-01-29
当定义两种或多种具有相同名称的方法时,就称作重载。
正解
回复
mobydick 2007-01-29
1.1中只支持同名方法有不同数量的参数
2.0中已经支持同名方法有相同数量但类型不同的参数了。和泛型有重叠~
回复
liujia_0421 2007-01-29
每个类型成员都有一个唯一的签名。方法签名由方法名称和一个参数列表(方法的参数的顺序和类型)组成。只要签名不同,就可以在一种类型内定义具有相同名称的多种方法。当定义两种或多种具有相同名称的方法时,就称作重载。
回复
Red_angelX 2007-01-29
FOR EX:
public void fun1(int a,int b)
{
Do(a,b);
}

public void fun1(int a)
{
Do(a,0);
}
回复
viena 2007-01-29
不会混淆
回复
相关推荐
发帖
C#
创建于2007-09-28

10.6w+

社区成员

.NET技术 C#
申请成为版主
帖子事件
创建了帖子
2007-01-29 10:15
社区公告

让您成为最强悍的C#开发者