黑马程序员技术交流社区

标题: 关于继承的问题 [打印本页]

作者: 孤独的鸟人    时间: 2013-5-13 20:24
标题: 关于继承的问题
本帖最后由 孤独的鸟人 于 2013-5-13 22:33 编辑
  1. class Fu
  2. {
  3.         void show()
  4.         {
  5.                 System.out.println("fu show");
  6.         }
  7.         void speak()
  8.         {
  9.                 System.out.println("vb");        
  10.         }
  11. }
  12. class Zi extends Fu
  13. {
  14.         void speak2()
  15.         {
  16.                 System.out.println("java");        
  17.         }
  18.         void show()
  19.         {
  20.                 System.out.println("zi show");
  21.         }
  22.         
  23. }
  24. class ExtendsDemo3
  25. {
  26.         public static void main(String[] args)
  27.         {
  28.                 Zi z=new Zi();
  29.                 z.speak();
  30.         }
  31. }
  32. 如上代码,为什么说子类中有3个方法?
复制代码

作者: long    时间: 2013-5-13 20:29
因为子类继承了父类的speak()方法,复写了父类的show()方法,再加上子类独有的speak2()方法,总共是3个方法。
作者: 韩秀山    时间: 2013-5-13 20:33
子类继承了父类:意味着子类中有了父类的方法和属性;子类特有speak2()方法  子类重写了父类的show()方法  子类中隐含着speak()方法
作者: ZhaoYuBetter    时间: 2013-5-13 20:34
楼上正解
作者: 李征    时间: 2013-5-13 20:37
在你的代码中,子类继承父类,子类有2个方法,子类继承了父类的2个方法,如果子类和父类的方法都不相同,那么就是4个方法,但是其中SHOW方法父类也拥有,那么子类的SHOW方法就是复写了父类的SHOW方法,可以理解成覆盖,所以子类只有3个方法,希望能帮到你,我也在学习中
作者: 小臣    时间: 2013-5-13 21:07
在使用子类的成员方法时:首先在子类中找,其次在父类中找。找不到,报错。
                      super可以在子类中使用父类的成员方法。
                       
                        子类中存在和父类成员方法同名的这种现象,叫做重写,复写,覆盖。
                        重写(override)和重载(overload)的区别:
                        重载的特点:
                                **在同一类中。
                                **方法名相同,参数列表不同。
                        重写的特点:
                                **要有继承关系。在子父类中
                                **方法的声明相同。(方法名和参数列表都相同)
                                        ***覆盖时,子类方法权限一定要大于等于父类方法权限
                                        ***静态只能覆盖静态。
作者: 花开花落总相似    时间: 2013-5-13 21:14

作者: 赵利斌    时间: 2013-5-13 21:19
这个问题太简单了   大家回答的都正确
作者: Sword    时间: 2013-5-13 22:24
如果问题未解决,请继续追问,如果问题解决了,请点击你的帖子下面的"编辑"重新编辑帖子,将分类改为“已解决”,谢谢合作!




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