zoukankan      html  css  js  c++  java
  • java运行顺序-JVM之九

    简化顺序版本是:

    1. 父类的静态成员赋值和静态块,代码排版先后顺序执行,只运行一次
    2. 子类的静态成员赋值和静态块,代码排版先后顺序执行,只运行一次
    3. 父类代码块
    4. 父类构造方法
    5. 子类初始化块
    6. 子类构造方法

    再次构造子类,将重复3/4/5/6步骤

    总之:见到静态必先行-》类中代码块-》构造。

     

    public class Hello {

        static class A{

            static C c =new C();

            public A(){

                System.out.println("A's Constructor");

            }

            static {

                System.out.println("A's static ");

            }

     

        }

        static class B extends A{

     

            public B(){

                System.out.println("B's Constructor");

            }

            D d = new D();

            C c =new C();

            static {

                System.out.println("B's static ");

            }

     

        }

        static class C {

            public C(){

                System.out.println("C's Constructor");

     

            }

            static {

                System.out.println("C's static");

            }

        }

        static class D{

            public D(){

                System.out.println("D's Constructor");

            }

            static {

                System.out.println("D's static");

            }

        }

        public static void main(String args[]){

            System.out.println("start");

            B b = new B();

        }

    }

     

    结果:

    start

    C's static

    C's Constructor

    A's static 

    B's static 

    A's Constructor

    D's static

    D's Constructor

    C's Constructor

    B's Constructor

     

    第二例子:

    http://blog.csdn.net/wenwen091100304/article/details/49488137

  • 相关阅读:
    洛谷P2762 太空飞行计划问题
    网络流24题 gay题报告
    洛谷P1712 区间
    洛谷P2480 古代猪文
    10.9zuoye
    面向对象类编程,计算分数
    请输入验证码优化版
    面向对象式开发程序
    直接选择排序与反转排序
    随机数产生原理
  • 原文地址:https://www.cnblogs.com/muffe/p/6579962.html
Copyright © 2011-2022 走看看