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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 弄啥呢 中级黑马   /  2016-7-7 22:43  /  889 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

求大神解答

4 个回复

倒序浏览
本帖最后由 ImKing 于 2016-7-7 22:52 编辑

重载(overload):可以改变返回值类型,只看参数列表
(1) 方法重写(Override):子类中出现了和父类中方法声明一模一样的方法。与返回值类型有关,返回值是一致(或者是子父类)的
(2)方法重载:本类中出现的方法名一样,参数列表不同的方法。与返回值类型无关。
(3)子类对象调用方法的时候: 先找子类本身,再找父类。
根据定义,应该能区分出来了吧 {:2_36:}一个侧重的是参数列表,一个侧重的是返回值类型
回复 使用道具 举报
一个老师说的,你可以看看:

方法重写的前提: 必须要存在继承的关系。

方法的重写: 子父类出了同名的函数,这个我们就称作为方法的重写。

什么是时候要使用方法的重写:父类的功能无法满足子类的需求时。

方法重写要注意的事项:
        1.方法重写时, 方法名与形参列表必须一致。
        2.方法重写时,子类的权限修饰符必须要大于或者等于父类的权限修饰符。
        3.方法重写时,子类的返回值类型必须要小于或者 等于父类的返回值类型。
        4.方法重写时, 子类抛出的异常类型要小于或者等于父类抛出的异常类型。
                        Exception(最坏)
                        RuntimeException(小坏)

方法的重载:在一个类中 存在两个或者两个 以上的同名函数,称作为方法重载。
方法重载的要求
        1. 函数名要一致。
        2. 形参列表不一致(形参的个数或形参 的类型不一致)
        3. 与返回值类型无关。
回复 使用道具 举报
15623379627 来自手机 初级黑马 2016-7-7 22:59:36
板凳
重载是一个类中的不同方法之间,方法名相同,参数列表不同,与返回值类型无关。重写是父类和子类之间,方法名相同,参数列表相同,返回值类型也相同
回复 使用道具 举报
重载:1、一个类中 。  2、同名函数.  3、参数列表不同.  4、于返回值类型无关
重写:1、子父类中。   2、同名函数。3、参数列表相同。4、返回值类型要相同。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马