Java中的初始化程序块
时间:2020-01-09 10:34:48 来源:igfitidea点击:
创建类的实例时,将调用构造函数以初始化实例变量。使用构造函数初始化实例变量的另一种方法是在Java中使用初始化块。创建类的实例时,始终执行初始化程序块。
Java中的Initializer块的一般形式
{ // whatever code is needed for initialization // goes here }
如何在Java中使用初始化程序块
Java编译器将初始化程序块复制到每个构造函数中。因此,如果类中有重载的构造函数,则可以使用此方法共享代码块。将公共代码放在初始化程序块中可确保始终执行该代码段,而与调用的构造函数无关。
初始化程序块Java示例
public class MainClass { //instance initializer block { System.out.println("Instance initializer block, this block is always executed"); } MainClass(){ System.out.println("In no-arg constructor"); } MainClass(int i){ System.out.println("In single argument constructor-" + i); } public static void main(String[] args) { MainClass obj1 = new MainClass(); MainClass obj2 = new MainClass(10); } }
输出:
Instance initializer block, this block is always executed In no-arg constructor Instance initializer block, this block is always executed In single argument constructor-10
如我们所见,是为对象的初始化而调用了no-arg构造函数还是调用了具有单个参数的构造函数,初始化程序块总是被执行。