黑马程序员技术交流社区

标题: 关于分层的初次接触 分析思路是否正确 望指点 [打印本页]

作者: lixunwen    时间: 2015-5-1 17:39
标题: 关于分层的初次接触 分析思路是否正确 望指点
没有学到分层 只是根据结果来注释 具体如下/*
class X {
        Y b = new Y(); //分析 类Y与类X是平级,所以按从上往下执行
        X() {
                System.out.print("X");
        }
}

class Y {
        Y() {
                System.out.print("Y");
        }
}

public class Z extends X {
        //Y y = new Y();     //分析 类Z与类Y 由于类Z是属于X的子类 所以优先对Z类进行初始化,先对父类进行初始化,再执行Y类 最后执行Z类的输出语句
        Z() {
                //super
                System.out.print("Z");
        }
        public static void main(String[] args) {
                new Z();
        }
}
    输出结果:YXZ
*/
/*class X {
        //Y b = new Y();
        X() {
                System.out.print("X");
        }
}

class Y {
        Y() {
                System.out.print("Y");
        }
}

public class Z extends X {
        //Y y = new Y();
        Z() {
                //super
                System.out.print("Z");
        }
        public static void main(String[] args) {
                new Z();
        }
}
  输出结果为:XZ
  */
/*
  class X {
        //Y b = new Y();
        X() {
                System.out.print("X");
        }
}

class Y {
        Y() {
                System.out.print("Y");
        }
}

public class Z extends X {
        Y y = new Y();
        Z() {
                //super
                System.out.print("Z");
        }
        public static void main(String[] args) {
                new Z();
        }
}
输出结果为:XYZ
*/
class X {
        Y b = new Y();
        X() {
                System.out.print("X");
        }
}

class Y {
        Y() {
                System.out.print("Y");
        }
}

public class Z extends X {
        Y y = new Y();
        Z() {
                //super
                System.out.print("Z");
        }
        public static void main(String[] args) {
                new Z();
        }
}

/* 输出结果为 YXYZ */





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