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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

//此题的运行结果,以及执行过程如何?????
//i的值为何会是这么的,是因为子类并没有重新定义i,而是继承了父类的i,但是在构造方法中又重新给予赋值了,那其父类中的值也会发生改变的。

  1. <p>class Super</p><p>{
  2.         int i=0;
  3.         public Super(String a)
  4.         {
  5.                 System.out.println("A");
  6.                 i=1;        
  7.         }
  8.         public Super()
  9.         {
  10.                 System.out.println("B");
  11.                 i+=2;
  12.         }
  13. }
  14. class Demo extends Super
  15. {
  16.   {
  17.    System.out.println("d");
  18.    System.out.println(i);
  19.   }
  20.   
  21.   public Demo(String a)
  22.         {
  23.                 //super();
  24.                 System.out.println("C");
  25.                 i=8;
  26.     System.out.println(i);
  27.         }
  28.         public static void main(String[] args)
  29.         {
  30.                 int i=4;
  31.                 Super d=new Demo("A");
  32.                 System.out.println(d.i);//BdC8
  33.         }</p><p>}</p>
复制代码


0 个回复

您需要登录后才可以回帖 登录 | 加入黑马