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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

  1. //做这种题要将子类中隐含的继承自父类的内容先补齐,
  2. //然后再看方法的调用,存在多层继承时,注意调用方法的查找范围。
  3. class DuoTaiTest3
  4. {
  5.         public static void main(String[] args)
  6.         {
  7.                 A a = new B();
  8.                 a.show();// 输出:爱
  9.                 B b = new C();//这里创建的是类C的对象
  10.                 b.show();// 输出: 你
  11.         }
  12. }
  13. class A
  14. {
  15.         public void show()
  16.         {
  17.                 show2();
  18.         }
  19.         public void show2()
  20.         {
  21.                 System.out.println("我");
  22.         }
  23. }
  24. class B  extends A
  25. {
  26.         /*
  27.         public void show()
  28.         {
  29.                 show2();
  30.         }
  31.         */
  32.         public void show2()
  33.         {
  34.                 System.out.println("爱");
  35.         }
  36. }
  37. class C extends B
  38. {
  39.         public void show()
  40.         {
  41.                 super.show();//这里b.show()调用父类B的show方法,而类B的show方法继承自类A,
  42.                                          //所以b.show()调用了show2(),而这里的show2不是类A中的,而是类C中的;
  43.                                          //若C类中没有重写show2,则调用其父类B中的,依次向上查找。
  44.         }
  45.         public void show2()
  46.         {
  47.                 System.out.println("你");
  48.         }
  49. }
复制代码

6 个回复

倒序浏览
来瞧瞧  我们班的啊!!
回复 使用道具 举报
写的真好,怪累的
回复 使用道具 举报
顾浩 发表于 2015-6-14 00:06
来瞧瞧  我们班的啊!!

这样就顶了?
回复 使用道具 举报
加油~~
回复 使用道具 举报
这样的代码没自己敲过,难说不会理解错误啊。
回复 使用道具 举报
有些复杂 还要琢磨一下 谢谢分享
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马