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

© 邂逅流星雨 中级黑马   /  2015-6-16 21:36  /  2378 人查看  /  31 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

方法重载和重写有什么区别

31 个回复

正序浏览
很简单,
重写是指继承中的子父类之间方法名,返回值,参数列表一模一样。
重载是方法名一模一样,但是参数列表必须不同,参数列表包括参数类型和参数个数。跟返回值没有任何关系
回复 使用道具 举报
进来学习的。
回复 使用道具 举报
重载是函数名字一样,参数不一样.重写还没学到
回复 使用道具 举报
Nemo 中级黑马 2015-6-18 20:36:20
28#
重载是参数的个数或者类型不同,重写是一模一样的两个方法
回复 使用道具 举报
该说的都说了,楼上的说的很详细,赞一下。
回复 使用道具 举报
又长知识了
回复 使用道具 举报
总结:重写
1、必须是在继承里,
2、方法名、返回值类型、参数个数和参数类型 都必须相同
3、派生类重写的方法的访问权限不能低于基类的权限
4、派生类抛出的异常应该和基类相等或比基类更小
重载
一个类中的方法与另一个方法同名,但是参数表不同,这种方法称之为重载方法。
回复 使用道具 举报
为了理想而奋斗 来自手机 中级黑马 2015-6-18 11:59:02
24#
楼山说的对。
回复 使用道具 举报
大家总结得很好啊!
回复 使用道具 举报
楼上说的完全正确呀
回复 使用道具 举报
重载是方法名和参数列表不一样   重写是指函数一模一样子类继承父类时一般要重写方法
回复 使用道具 举报
我来看看,顺便顶一下
回复 使用道具 举报
重载  是参数列表不同,函数名相同
重写  修饰符 函数名 函数列表 返回值 都要一样才行
回复 使用道具 举报
我来点个赞
回复 使用道具 举报
楼上的说的都对!
回复 使用道具 举报
可以从字面理解:
重载:就是重新加载,在同一个类中方法名相同,参数列表不同的现象叫做方法重载.可以想象成做蛋糕,你可以放进不同的原料从而做出不同的蛋糕,但是都是做蛋糕.
重写:就是重新编写.以继承为前提,方法名相同,参数列表相同,方法访问权限修饰符大于等于父类的现象叫做重写。同样可以想象成做糕点,你传进去的可以都是面粉和巧克力,但是做法不同,使用做蛋糕的流程做出来的就是巧克力蛋糕,使用做面包的流程做出来的就是巧克力面包。
重载强调的是参数列表不同,重写强调的是方法内容不同。
回复 使用道具 举报

楼上已经说了。。很详细。。
回复 使用道具 举报
wangwencheng 发表于 2015-6-17 01:06
好多大神,受教了。

还不睡
回复 使用道具 举报
好多大神,受教了。
回复 使用道具 举报
方法的重写和方法的重载的区别?
方法重载:在同一个类中,方法的名字相同,参数列表不同(参数的个数,参数的类型,参数的位置顺序),与返回值类型无关
方法重写:在子父类中,子类的方法的声明与父类的方法的声明完全相同
方法重写的注意事项:
                子类不可以重写父类中私有的成员方法
                子类的方法访问权限必须大于或者等于要重写的父类中的方法的访问权限
                静态方法只能重写静态方法
                final修饰的方法不可以被子类重写
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 加入黑马