java构造方法执行前先调用普通代码块
时间: 2023-09-18 19:08:20 浏览: 119
Java:静态代码块和构造函数执行顺序
在 Java 中,我们可以使用普通代码块(也称为实例初始化块)来在构造方法执行之前执行一些代码逻辑。普通代码块是定义在类中但不属于任何方法的代码块,使用花括号 `{}` 包围。
当创建对象时,会先执行普通代码块中的代码,然后再执行构造方法。这样可以在构造方法执行前对对象进行一些初始化操作或者执行其他的逻辑。
下面是一个示例代码来说明普通代码块的执行顺序:
```java
public class MyClass {
{
// 这里是普通代码块
System.out.println("普通代码块被执行");
}
public MyClass() {
System.out.println("构造方法被执行");
}
public static void main(String[] args) {
MyClass obj = new MyClass();
}
}
```
输出结果为:
```
普通代码块被执行
构造方法被执行
```
可以看到,在创建 `MyClass` 对象时,先执行普通代码块中的代码,然后再执行构造方法。这样可以确保在构造方法执行之前,我们可以对对象进行一些额外的初始化或者其他操作。
阅读全文