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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© lhf_java 中级黑马   /  2014-8-13 23:26  /  1265 人查看  /  3 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

自己总结了下区别,不知道对不对?
        方法重写:
                子类中出现和父类中一模一样的方法声明的方法。

        方法重载:
                同一个类中,出现方法名相同,参数列表不同的方法。
                跟返回值无关。

        重载可以改变返回值类型,因为他跟返回值无关。

3 个回复

倒序浏览
恩,java继承多态的基础
回复 使用道具 举报
Fengs 发表于 2014-8-14 16:42
恩,java继承多态的基础

是啊,感觉用的时候还是有点乱.
回复 使用道具 举报
方法重载(Overload)的原则:2同1不同
同一个类中方法名相同,形参列表不同。(至于方法的其他部分,如方法的返回值类型、修饰符等,与方法重载没有任何关系)

方法覆盖(Override)的原则:3同2小1大
3同:
     1、同为类方法或同为实例方法
     2、方法名相同
     3、形参列表相同
2小:
     1、子类方法的返回值类型应比父类方法的返回值类型更小或相等
     2、子类方法声明抛出的异常应比父类方法声明抛出的异常更小或相等
1大:
     1、子类方法的访问权限应比父类方法的访问权限更大或相等
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马