黑马程序员技术交流社区

标题: 看程序写结果 进来看看呗 [打印本页]

作者: zlp19940327    时间: 2015-4-16 00:53
标题: 看程序写结果 进来看看呗
class X {
        Y b = new Y();
        static {
                System.out.println("HelloWorld");
        }
        {
                System.out.println("How are you ?");
        }
        X() {
                System.out.print("X");
        }
}
class Y {
        Y() {
                System.out.print("Y");
        }
}
class Z extends X {
        Y y = new Y();
        Z() {
                System.out.print("Z");
        }
}
class Demo
{
        public static void main(String[] args)
        {
                new Z();
        }
}



作者: 耳东君    时间: 2015-4-16 01:02

  1. class X {
  2.         Y b = new Y();//3
  3.         static {
  4.                 System.out.println("HelloWorld");//2
  5.         }
  6.         {
  7.                 System.out.println("How are you ?");//4
  8.         }
  9.         X() {
  10.                 System.out.print("X");//5
  11.         }
  12. }
  13. class Y {
  14.         Y() {
  15.                 System.out.print("Y");
  16.         }
  17. }
  18. class Z extends X {
  19.         Y y = new Y();//6
  20.         Z() {
  21.                         //super();
  22.                 System.out.print("Z");//7
  23.         }
  24. }
  25. class Demo
  26. {
  27.         public static void main(String[] args)
  28.         {
  29.                 new Z(); //1
  30.         }
  31. }
  32. //HelloWorld  y  How are you ? x   y    z
复制代码

作者: cyr    时间: 2015-4-16 06:56
HelloWorld
YHow are you ?
XYZ
作者: 海带    时间: 2015-4-16 09:54
为什么Y在how are you 前面?构造代码块不是优于构造函数执行吗?
作者: 只吃饭不洗碗    时间: 2015-4-16 14:05
还真是得好好琢磨啊
作者: 百思不得解    时间: 2015-4-16 14:47
得好好缕缕思路,那个先执行后执行。
作者: zhangjnia    时间: 2015-4-16 17:37
这个得好好想想了,
作者: 叶松ye    时间: 2015-4-16 17:50
了咯厉害哦哦啦啦额




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