今天带大家一起学习一下代码块相关的知识!
一、代码块的概念及分类
代码块又叫初始化块,属于类中的成员,类似于方法,通过{ }包围起来。与方法不同,代码块没有方法名,没有返回值,没有参数,只有方法体,且不用通过对象或类显式调用,而是在加载类的时候或者创建对象的时候隐式调用。
我们根据代码块定义的位置以及关键字,可以分为以下四种:普通代码块、构造代码块、静态代码块和同步代码块。
二、再谈代码块
1.普通代码块:定义在方法中的代码块,用法较少见,了解即可。
2.构造代码块:定义在类中的代码块(不加修饰符),也叫实例代码块。一般用于初始化实例成员变量。
3.静态代码块:使用static定义的代码块,一般用于初始化静态成员变量。
注意事项:(1)静态代码块不管生成多少个对象,其只会执行一次。
(2)静态成员变量是类的属性,因此是在JVM加载类时开辟空间并初始化的。
(3)如果一个类中包含多个静态代码块,在编译代码时,编译器会按照定义的先后次序依次执行。
(4)实例代码块只有在创建对象时才会执行。
三、调用顺序
当我们创建一个对象时,在一个类中,代码块之间的调用顺序又是怎样的呢?
请看如下代码:
不难发现调用顺序为:静态代码块——》实例代码块——》构造方法。
以上就是关于代码块的一些知识,如果哪里讲的不对希望大家能够指出,谢谢大家的阅读。小哥哥小姐姐长得这么好看,点赞+关注呗!