A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 踏雪风暴 中级黑马   /  2014-7-7 12:10  /  1640 人查看  /  8 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 踏雪风暴 于 2014-7-9 09:25 编辑

代码简写了,
import java.util.*;
import static  java.util.Arrays.*;     
import static java.util.Collections.*;

class  aa
{
        public static void main(String[] args)
        {
                int[] arr = {2,1,5};
                sort(arr);
        
                ArrayList al = new ArrayList();
                al.add(1);        
                 sort(al);                  
        }
}
我想问下  为什么 这两个 sort   不用 类名 区分呢?   与我知道的  貌似矛盾 啊
sort  分别在Arrays ,   Collections 中不应该是重载吧。。


8 个回复

倒序浏览
下面的两个sort根据形参的传入类型,自动匹配!
回复 使用道具 举报
这是函数重载吧……
下面的俩sort的参数类型不一样,所以重载。
重载的标识是:
1、函数名相同
2、参数列表不同(参数个数不同、参数类型不同、参数顺序不同(相当于参数类型不同))
回复 使用道具 举报
应该是函数的重载,同一个类中的2个或2个以上的方法可以有同一个名字,只要它们的参数声明不同即可。在这种情况下,该方法就被称为重载,这个过程称为方法重载。
回复 使用道具 举报 0 1
import static 静态导入
回复 使用道具 举报
blue_sky 发表于 2014-7-7 12:30
下面的两个sort根据形参的传入类型,自动匹配!

没那么先进吧?   又不是 函数重载的。。。
回复 使用道具 举报

是 静态导入  但不是 同名了吗?为何没区,却可行的
回复 使用道具 举报
踏雪风暴 发表于 2014-7-7 13:36
是 静态导入  但不是 同名了吗?为何没区,却可行的

应该是因为 两个类中的sort参数没有重复的,类似重载,如果参数也相同应该编译器就会报错了
回复 使用道具 举报
踏雪风暴 发表于 2014-7-7 13:34
没那么先进吧?   又不是 函数重载的。。。

sort后面传入的参数决定的。。。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马