代码块

什么是代码块:

在类或者方法中,直接使用 {} 括起来的一段代码,表示一块代码区域

代码块变量属于局部变量,只在自己所在的区域(前后的{})内有效

根据代码块定义的位置的不同,我们又分成三种形式

1):局部代码块:直接定义在方法内部的代码块;

一般的,我们是不会直接使用局部变量的代码块的,只不过我们会结合if,while,for,try等关键字联合使用,表示一块代码区域.

2):初始化代码块(构造代码块):直接定义在类中

每次创建对象都会调用构造器,在调用构造器之前,会先执行本类中的初始化代码块

通过反编译之后,我们发现,初始化代码也作为构造器的最初的语句.

我们一般不适用初始化代码块的,难看,即使要做初始化操作,我们一般在构造器中做即可,如果做初始化操作的代码块比较多,此时构造器的结构比较混乱,此时专门定义一个方法做初始化操作,再在构造器中调用即可.

1):静态代码块:使用static修饰的初始化代码块

在主方法执行之前执行静态代码块,而且只执行一次.

Main方法是程序的入口,为什么静态代码块优先于main方法执行? 一一→静态成员随着字节码的加载也加载进JVM,此时main方法还没执行,因为方法需要JVM调用,先把字节码加载进JVM,而后在调用main方法

一般的,我们用来做初始化操作,加载资源,加载配置文件等等.

静态成员是在静态代码块中初始化的,非静态成员在是构造器中初始化.

 

posted on 2017-12-21 14:07  听风醉  阅读(245)  评论(0编辑  收藏  举报

导航

因为不可能,所以才值得相信。