gpt4 book ai didi

java - Java 中的方法特定常量

转载 作者:行者123 更新时间:2023-11-30 11:12:11 24 4
gpt4 key购买 nike

是否可以有一个只对特定方法局部的常量变量?只在一个方法中使用时,似乎没有必要放在类级别。在方法中使用“final”修饰符将防止变量在初始化后被修改,但每次调用方法时都会重新初始化,即使是在不需要的时候。有没有办法让它静态?例如,在下面的代码中,每次调用 doStuff 方法时都会打印“calculating”:

public void doStuff() { 
final int myVar = getNum();
...
}

public int getNum() {
System.out.println("calculating");
return 2;
}

“myVar”是否可以初始化一次,例如,当加载类而不在方法之外时?

这主要是出于好奇。这是曾经做过或建议过的事情吗?

最佳答案

此时 Java 中的方法不能有静态变量。

Is this something that is ever done or suggested?

一些其他语言(C、C++)有这个。它确实提供了额外的数据封装。例如,在 C++ 中,它是规范的惰性实例化单例:

Singleton const* Singleton::instance() {
const static Singleton instance;
return &instance;
}

我不知道这是 Java 的提议功能。

关于java - Java 中的方法特定常量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27031300/

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