黑马程序员技术交流社区

标题: 多态Demo为什么? [打印本页]

作者: 新人—小明同学    时间: 2016-7-7 09:21
标题: 多态Demo为什么?
  1. class A {
  2.        
  3.     public void show() {
  4.         show2();
  5.     }
  6.     public void show2() {
  7.         System.out.println("我");
  8.     }
  9. }
  10. class B extends A {
  11.     public void show() {
  12.         show2();
  13.     }
  14.        
  15.     public void show2() {        //为什么不写这个方法,程序还是可以运行并输出 你
  16.         System.out.println("爱");        //b.show()调用自己show()方法,而show()方法体调用父类show()方法,此时调用show2()方法,它不是要先看看自己有没有show2()方法,然后再运行子类show2()方法吗,为什么我把这个方法注释掉了,还是编译成功呢
  17.     }
  18. }
  19. class C extends B {               
  20.     public void show() {
  21.         super.show();
  22.     }
  23.        
  24.     public void show2() {
  25.         System.out.println("你");
  26.     }
  27. }
  28. public class Test2DuoTai {
  29.     public static void main(String[] args) {
  30.                
  31.         B b = new C();       
  32.         b.show();                //
  33.        
  34.     }
  35. }
复制代码







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