黑马程序员技术交流社区

标题: 重载对于程序的意义是什么? [打印本页]

作者: 蒋元龙    时间: 2013-8-31 15:10
标题: 重载对于程序的意义是什么?
本帖最后由 蒋元龙 于 2013-9-1 12:12 编辑

重载对于程序的意义是什么?最终目的是什么?
作者: masterV    时间: 2013-8-31 15:23
为了让使用者更加方便呗。比如ArrayList中的add方法,add(E e)方法能把该元素添加到集合尾部, add(int index, E element)方法能在指定脚标处添加元素,如果没有后者,要想实现此功能岂不是很麻烦
作者: 梦航    时间: 2013-8-31 15:24
    意义要从定义重载的规则来看:
1、同一个类里可以有多个同名方法
2、只要形参列表不同即可
3、可以有不同的返回类型
4、可以有不同的访问控制符
5、可以抛出不同的异常

只要实现了重载,如在调用方法时,会自动匹配,也就是说在编译期就确定要调用哪个方法
最常用到重载的地方就是对构造器的重载
作者: 代文娟    时间: 2013-8-31 15:47
一个类中的方法与另一个方法同名,但是参数表不同.这就是重载,其实就是为了让类以统一的方式处理不同类型的数据的一种手段,当被调用时Java就会根据参数的类型和数量来决定实际调用哪一个
作者: 科大涛哥    时间: 2013-8-31 15:49
重载是方法名称相同,参数列表不同,为了方便写代码,因为你只要记住少量的函数方法,如果没有重载,实现同一类功能需要写多个函数,还不能重名,而有了重载,你只要记住一个函数名,随便使用哪种参数传递调用都可以。
作者: 蒋元龙    时间: 2013-8-31 15:58
我想知道的是 重载 对于方法的意义是什么,重载的最终目的是什么。

不是重载的使用方法
作者: qqhao01    时间: 2013-8-31 16:14
函数的重载(overload)          重载和参数列表有关系
概念:在同一个类中,允许存在一个以上的同名函数,只要它们的参数个数或者参数类
型不同即可。
特点:与返回值类型无关,只看参数列表。
好处:方便阅读,优化了程序设计
用的时候:当定义的功能相同,但参与运算的未知内容不同。那么,这时就定义一个函
数名称以表示功能,方便阅读,而通过参数列表的不同来区分多个同名函数。
作者: Thunder_-_Li    时间: 2013-8-31 18:04
个人理解 ----仅作参考    重载对方法的重用性和灵活行进行提升,只要参数列表的个数或者类型不一致都是重载。     大白话就是(厨房的大厨-------你给他五花肉、和蒜苔他能给你做出蒜苔肉丝。你给他西红柿和鸡蛋他能给你做出西红柿炒鸡蛋)  只是参数不同  返回值也不同。加工 对象变了。而大厨没有变

     兄弟  个人见解仅供参考。。。。。                           祝学业有成
                                                   加油 ---------黑马
作者: brucel50    时间: 2013-9-1 10:39
有了重载,就不用定义那么多的方法名了。
作者: zhangcheng5468    时间: 2013-9-2 07:30
多态啊!编译时的多态性。一个类的对象调用若干同名方法,系统在编译时,根据调用方法的实参类型及实参的个数来决定调用哪个同名方法,实现何种操作。编译时的多态性是通过方法重载来实现的。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2