静态代码块,构造代码块,静态方法,构造方法的执行顺序及加载顺序

构造代码块依赖于构造方法,是在构造方法被调用执行之前执行,如果构造方法不执行,则构造代码块不会被执行。
如果有多个构造代码块,构造代码块的执行是按照书写顺序执行。
和构造函数的作用类似,都能对对象进行初始化,并且只要创建一个对象,构造代码块都会执行一次。但是反过来,构造函数则不一定每个对象建立时都执行(多个构造函数情况下,建立对象时传入的参数不同则初始化使用对应的构造函数)。
利用每次创建对象的时候都会提前调用一次构造代码块特性,我们可以做诸如统计创建对象的次数等功能。

静态代码块写在类里面的时候,是先类的加载而加载,执行,且只会被加载一次。
静态方法在类的加载前已经被加载,自动执行。
静态代码块如果写在类里面,只有当方法被调用的时候,该静态代码块才会被执行。
静态代码块属于主动加载,静态方法属于被动加载。静态代码块在被加载时,自动执行,静态方法需要类来调用执行。

静态代码块>构造代码块>构造函数>普通代码块

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值