C#方法参数个数和类型相同,名称不同,可以实现重载吗

比如说:

(1)public void add(int i){}
(2)public void add(int i,int j){}
(3)public void add(int a){}
(4)public void add(double i,int j){}

1和2算重载因为那个数不同。
2和4也算重载因为类型不同。
那1和3算不算重载?他们的名字不同??

这不能通过编译。因为1和3本质是一样的两个方法,参数的名称本质只是在方法内部的一个变量的标识,重载只与参数类型和参数个数有关。如果有多个参数,那么如果这些参数的类型不同就要考虑参数位置了。例如:
public void print(int a,String b) {}
public void print(String a, int b){}

也是方法的重载

posted on 2012-06-26 13:17  流星落  阅读(960)  评论(0编辑  收藏  举报

导航