博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
static之静态初始化块
阅读量:7240 次
发布时间:2019-06-29

本文共 465 字,大约阅读时间需要 1 分钟。

 

static之静态初始化块

     所有的静态初始化块都优先执行,其次才是非静态的初始化块和构造函数,它们的执行顺序是:

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

比如下面的代码:

运行结果:

 

 

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

参考:

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

                                     

转载于:https://www.cnblogs.com/s1-myblog/p/6795470.html

你可能感兴趣的文章
JS实现clone()方法,对五种主要数据类型进行值复制
查看>>
解密QQ号——队列
查看>>
python shelve模块
查看>>
vc6.0 动态工具栏按钮
查看>>
APP耗电量专项测试整理
查看>>
ffmpeg编程(二)
查看>>
xcode添加点击事件
查看>>
什么是json
查看>>
dede 日期的所有格式
查看>>
How to set a MySQL root user password in MAC OSX
查看>>
ntp.log日志梳理
查看>>
【Java例题】8.2 手工编写字符串统计的可视化程序
查看>>
山寨一个PetShop(Task003)——函数
查看>>
五.外键约束的参照操作
查看>>
走向Node与Webpack 之路 - CommonJS 模块化
查看>>
php实现随机数字、字母的验证码
查看>>
java中的包有那些 ???
查看>>
sql 加密解密函数
查看>>
[转]以下划线开头的变量名
查看>>
【转】如何通过Html网页调用本地安卓app?
查看>>