有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java更改静态方法中静态字段的值

我有一个SampleClass带有静态字段ab和一个静态方法init。要使用ab的新值重新创建SampleClass,我使用以下语法:

public class SampleClass{

    private static int b;
    private static int a;
    
    public static void init(int a, int b) {
        SampleClass.a = a; //line 7
        SampleClass.b = b; //line 8
    }
}

事实上,我对7号线和8号线感到尴尬。这是可以接受的还是有更正确的方法


共 (2) 个答案

  1. # 1 楼答案

    是的,可以接受。事实上,如果为静态字段生成Setter方法,赋值方式也将是SampleClass.a = a

  2. # 2 楼答案

    你的语法没有错误

    对于static属性,要么使用问题中提供的语法,要么为参数指定不同的名称(出于代码自解释的原因)。 例如:

    public static void init(int newA, int newB) {
        SampleClass.a = newA;
        SampleClass.b = newB;
    }