黑马程序员技术交流社区

标题: 重载和重写 [打印本页]

作者: q1w2e3r4    时间: 2016-10-4 10:06
标题: 重载和重写
为什么说重写也是封装啊?不懂重载和重写到底有什么区别

作者: 梦想工程师    时间: 2016-10-4 10:09
首先名字都一样,重载是参数列表不一样,重写是什么都要求一样,重载就相当于有很多差不多的东西,就是尺寸不同,重写是覆盖原来的,面试题多看下笔记吧
作者: q1w2e3r4    时间: 2016-10-4 10:10
梦想工程师 发表于 2016-10-4 10:09
首先名字都一样,重载是参数列表不一样,重写是什么都要求一样,重载就相当于有很多差不多的东西,就是尺寸不同 ...

感谢好人
作者: 汪方玉    时间: 2016-10-4 10:12
1、重写override概念(掌握)
   子父类关系中,子类中存在与父类中方法声明完全一样的方法叫重写
   一句话:除了方法体以外其他都相同,但是子类修饰符权限要大于等于父类
2、重载overload概念(掌握)
   一个类中或者子父类关系中存在多个同名方法,并且参数列表不同的方法 叫重载
   子父类关系中:子类中的方法和父类中的方法构成了重载关系
3、重写的作用\应用(理解)
   升级改造父类的方法
4、注意(掌握)
   只有方法才存在重写,变量不存在


作者: Jerry007    时间: 2016-10-4 10:32
最明显的区别是位置不同,
方法重载一般是在本类中,方法名相同,参数列表不同.
而方法重写是必须是在子类中重写父类的方法,方法声明(包括方法名与参数列表,返回值类型)要与父类一模一样(返回值类型的是子父类除外),只是重写了方法体中的东西,目的是增强子类的功能.


建议多看老师的视频与笔记

作者: 马文丽    时间: 2016-10-4 10:57
本来想说说,结果看下边说的挺详细,我也学学,哈哈
作者: 月下樱    时间: 2016-10-4 15:31
重载就是类名一样,参数列表可以不一样。然后根据参数列表会调用不同的类。重写的话,打个比方,父类中有abc等等部分,然后我想改动其中的b部分,要去父类中找到b再修改也很麻烦,这时候就用一个子类重写修改父类中的b部分,可以省事很多

作者: 飞舞的指尖    时间: 2016-10-5 22:59
重写:子类的方法的权限>=父类的方法的权限(如果父类是private,子类就不能继承,何谈重写)
重写:重写的两个方法名也是必须相同
重写:重写的两个方法形参列表必须相同
重写:重写的两个方法返回值必须相同
作者: x379769646    时间: 2016-10-6 00:49
很好理解啊 重载就是多个方法都可以调用 形参列表不同  而重写形参列表是相同的




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