• static之静态初始化块


     

    static之静态初始化块

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

    比如下面的代码:

    运行结果:


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

    参考:

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

                                         

  • 相关阅读:
    day23 GUI
    day17JDK5.0新特性与正则表达式
    day12-day15集合
    day11线程
    day10-JavaAPI
    day09面向对象-
    day08面向对象-内部类、异常
    day06面向对象
    Idea导入Eclipse中的Maven Web(SSM)
    java给图片添加水印
  • 原文地址:https://www.cnblogs.com/s1-myblog/p/6795470.html
Copyright © 2020-2023  润新知