Java 什么是初始化块?
我们可以将代码放入构造函数或方法或初始化块中。初始化块有什么用?每个Java程序都必须有它吗?
回答:
首先,有两种类型的初始化块:
- 实例初始化块,以及
- 静态初始化块。
此代码应说明它们的用法以及执行顺序:
public class Test { static int staticVariable;
int nonStaticVariable;
// Static initialization block:
// Runs once (when the class is initialized)
static {
System.out.println("Static initalization.");
staticVariable = 5;
}
// Instance initialization block:
// Runs each time you instantiate an object
{
System.out.println("Instance initialization.");
nonStaticVariable = 7;
}
public Test() {
System.out.println("Constructor.");
}
public static void main(String[] args) {
new Test();
new Test();
}
}
印刷品:
Static initalization.Instance initialization.
Constructor.
Instance initialization.
Constructor.
如果要运行某些代码而不管使用哪个构造函数,或者想要对匿名类进行一些实例初始化,则实例迭代块很有用。
以上是 Java 什么是初始化块? 的全部内容, 来源链接: utcz.com/qa/408495.html