黑马程序员技术交流社区

标题: 6那去了 [打印本页]

作者: 冷风    时间: 2014-12-21 15:15
标题: 6那去了
  1. class Demo4
  2. {
  3.         int num =4;
  4.         public void show()
  5.         {
  6.                 System.out.println("Demo4");
  7.         }
  8. }
  9. class Demo3 extends Demo4
  10. {
  11.         int num=3;
  12.         public void show()
  13.         {
  14.                 System.out.println("Demo3+++"+num);
  15.         }
  16. }
  17. class Demo2 extends Demo4
  18. {
  19.         int num=2;
  20.         public void show()
  21.         {
  22.                 System.out.println("Demo2+++"+num);
  23.         }
  24. }
  25. class Demo1
  26. {
  27.         public  void fun(Demo4 d)
  28.         {
  29.                 d=new Demo3();//将Demo3赋值给d
  30.                 d.num=6;
  31.                 System.out.println(d.num);//6
  32.                 d.show();//Demo3+++3
  33.         }

  34. }
  35. class Demo
  36. {
  37.         public static void main(String[] args)
  38.         {
  39.                 Demo1 d1 =new Demo1();//创建Demo1
  40.                 Demo4 d = new Demo2();//多态
  41.                 System.out.println(d.num);//4
  42.                 d1.fun(d);//将Demo2传到Demo1中的fun方法
  43.                 d.show();//Demo2+++2
  44.                 System.out.println(d.num);//4

  45.                 Demo3 d2 = new Demo3();
  46.                 System.out.println(d2.num);//3
  47.         }
  48. }
复制代码

我很想知道我赋的那个6跑那去了。




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