gpt4 book ai didi

java - 在声明中初始化变量是否会使其在每次调用时重新创建?

转载 作者:行者123 更新时间:2023-12-01 11:22:49 26 4
gpt4 key购买 nike

我通常会避免这样做,但我时不时地在一些代码示例中偶然发现这一点,我想知道。

例如你有这个:

private Object obj;

public void someMethod() {
obj = new Object();
}

因此,只有在调用 someMethod() 时,该对象才会被初始化。

但是如果变量是这样声明的:

private Object obj = new Object();

稍后当我在某处使用 obj 变量时,这种声明会使其在每次引用时创建一个新实例吗?

最佳答案

如果字段有初始化语句,则在创建实例时,它将使用该语句的值初始化一次。换句话说,当实例化一个类时,会运行其实例字段初始值设定项和初始值设定项 block ,然后执行构造函数主体。

访问字段不会再次触发其字段初始化语句(如果事件有)。

关于java - 在声明中初始化变量是否会使其在每次调用时重新创建?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31052384/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com