• Java静态变量和构造函数的执行顺序


    案例:

    package com.devin;

    public class MyMain {
    public static void main(String args[]) {
    Father f = new Son();
    }
    }

    class Father {
    public Father() {
    System.out.println("Father Construct");
    }

    static int a=printFahter();

    static int printFahter() {
    System.out.println("print in father");
    return 1;
    }
    }

    class Son extends Father {
    public Son() {
    System.out.println("Son Construct");
    }

    static int b=printSon();

    static int printSon() {
    System.out.println("print in son");
    return 2;
    }
    }

    输出结果:

    print in father
    print in son
    Father Construct
    Son Construct

    结论,静态变量和构造函数的执行顺序:

    1、父类的静态变量;

    2、子类的静态变量;

    3、父类的构造函数;

    4、子类的构造函数;

     --------------------------------------------------------------------

    PS: 欢迎关注公众号"Devin说",会不定期更新Java相关技术知识。

    --------------------------------------------------------------------

  • 相关阅读:
    桥接模式
    单例模式
    迭代器模式
    组合模式
    备忘录模式
    适配器模式
    状态模式
    观察者模式
    golang 字符串统计
    go bytes缓冲区使用介绍 -转自https://www.cnblogs.com/--xiaoyao--/p/5122138.html
  • 原文地址:https://www.cnblogs.com/devinzhang/p/2340436.html
Copyright © 2020-2023  润新知