zoukankan      html  css  js  c++  java
  • static之静态初始化块

     

    static之静态初始化块

         所有的静态初始化块都优先执行,其次才是非静态的初始化块和构造函数,它们的执行顺序是:
          父类的静态初始化块
          子类的静态初始化块
          父类的初始化块
          父类的构造函数
          子类的初始化块
          子类的构造函数
          也就是说程序运行时静态初始化块最先被执行,然后执行普通初始化块,最后才执行构造方法由于静态初始化块只在类加载时执行一次,所以当再次创建对象 hello2 时并未执行静态初始化块。

    比如下面的代码:

    运行结果:


    需要特别注意:
    1)静态初始化块只在类加载时执行,且只会执行一次,同时静态初始化块只能给静态变量赋值,不能初始化普通的成员变量。
    2)非静态初始化块的代码会在类构造函数之前执行。使用时应当养成把初始化块写在构造函数之前的习惯,便于调试。

    参考:

    • http://www.cnblogs.com/BlackStorm/p/5699965.html
    • 慕课网 Java入门第二季

                                         

  • 相关阅读:
    Redis系统管理
    Redis简介和安装
    在Azure中搭建Ghost博客并绑定自定义域名和HTTPS
    ML:单变量线性回归(Linear Regression With One Variable)
    PRML Chapter4
    Windows+Idea安装Hadoop开发环境
    包装类
    认识J2SE
    Spark基本原理
    SQL总结
  • 原文地址:https://www.cnblogs.com/s1-myblog/p/6795470.html
Copyright © 2011-2022 走看看