Java 初始化/存储许多函数的变量

Java 初始化/存储许多函数的变量,java,Java,我有示例代码。我需要从f1和f2中去除arg2 public void initialize(int arg1) { //arg2 initialization int arg2 = 0; f1(arg1, arg2); f2(arg1, arg2); } f1(int arg1,int arg2){ //do sth } f2(int arg1, int arg2){ //do sth } 我试着在每个函数中初始化它,但是当你有15个函数,

我有示例代码。我需要从
f1
f2
中去除
arg2

public void initialize(int arg1) {
    //arg2 initialization
    int arg2 = 0;
    f1(arg1, arg2);
    f2(arg1, arg2);
}

f1(int arg1,int arg2){
    //do sth
}

f2(int arg1, int arg2){
    //do sth
}
我试着在每个函数中初始化它,但是当你有15个函数,而不是整数时,你有一个大的HashMap,每次初始化它都太昂贵了

public void initialize(int arg1) {
    f1(arg1);
    f2(arg1);
}

f1(int arg1){
    int arg2=0;
    //do sth
}

f2(int arg1){
    int arg2=0;
    //do sth
}
我还希望避免将变量创建为静态变量。你有没有想法把它存储起来?

把它作为一个字段

private int arg2 = 0;
public void initialize(int arg1) {
    arg2 = 0;
    f1(arg1);
    f2(arg1);
}

f1(int arg1){
    //do sth
}

f2(int arg1){
    //do sth
}

假设
f1
不更改
arg2
的值,这将以完全相同的方式工作。

我不明白为什么不是静态的,或者至少是一个类变量,因为它看起来确实是。将其作为类成员。