黑马程序员技术交流社区

标题: 重载与重写的提问 [打印本页]

作者: 星辉祝愿    时间: 2015-5-15 13:13
标题: 重载与重写的提问
Overload(重载)和Override(重写)有点分不清,下面的程序哪个方法是重载,哪个是重写啊?
  1. class MyFather{
  2.        
  3.         public int meth(int a ){
  4.                 a= 1;
  5.                 return a;
  6.         }
  7. }

  8. class MySon extends MyFather{
  9.         //A
  10.         public int meth(int b){
  11.                 b = 2;
  12.                 return b;
  13.         }
  14.        
  15.         //B
  16.         private int meth(){
  17.                 return 2;
  18.         }
  19.        
  20.         //C
  21.         public void meth(int c ,int d){
  22.                
  23.         }
  24. }
复制代码


作者: lizhi    时间: 2015-5-15 13:17
重载是指在同一个类中,方法名一样,参数列表不一样,返回值类型不要求!
重写是指在继承关系中子类重写父类的方法,有相同的方法名,参数列表以及返回值类型
作者: 郭.威    时间: 2015-5-15 14:15
重写是子类重写父类的方法,重载是方法名相同,参数类型不同
作者: hellotaomi    时间: 2015-5-15 14:53
二楼正解
作者: !85684009ex    时间: 2015-5-15 21:36
重写是继承的时候用的!子类重写父类的方法!
重载是调用方法时候!有相同的名字但参数列表不同!
参数列表怎么不同呢?!(参数类型不同~参数个数不同)
只要有以上亮点中一点就算重载!
重写和重载名字相同!但实际上是两回事!不会重写的同时重载!
作者: 397543420    时间: 2015-5-15 21:48
重载和重写,,很简单。。。
作者: 杨海林    时间: 2015-5-15 21:52
..................................
作者: lingdu    时间: 2015-5-15 22:07
来晚了。。。。
作者: lzh2015    时间: 2015-5-15 22:12
楼上这么多热心,答案还都是对的
作者: yuanhnu    时间: 2015-5-15 22:34
A重写,B,C重载
作者: 我干阿衰    时间: 2015-5-15 22:42
重写是子类重写父类的方法,重载是方法名相同,参数类型不同
作者: ruibocool    时间: 2015-5-16 00:29
我也分不清,学习啦
作者: 你好明天    时间: 2015-5-16 00:51
二楼正解
作者: 鱼饵    时间: 2015-5-16 07:41
二楼正解。




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