代码块--java进阶day03

1.代码块

1.局部代码块

定义在方法中的一对大括号,可以提早释放内存,走完{}里的逻辑后就会被释放,在之后的编程中无法使用


2.构造代码块

位置在类中,方法外的{},在构造方法执行的时候,构造代码块就会执行一次(优先执行构造代码块),可以用来提高代码复用性

.

为什么构造代码块会优先于构造方法执行?我们可以通过反编译文件来看 如下图

很明显,在编译好的文件中,我们写的构造代码块都会被加入到构造方法中,而且是在第一行

3.静态代码块

位置在类中方法外,需要加static关键字,随着类的加载而执行


上图中,第一句话就是静态代码块的,并且只执行了一次,这是因为静态代码块随着类的加载而执行,类是优先对象加载的,并且类只会加载一次

作用:给数据初始化

根据静态代码块的执行时机,我们可以用来变量赋值,但要注意静态访问静态,赋值的变量也得是静态

意义:

当我们要创建一个对象时,并且该对象的创建方式及其复杂,我们就可以通过静态代码块来创建

posted @ 2025-02-27 11:26  直実  阅读(16)  评论(0)    收藏  举报