从多个类中访问相同的变量[重复]。

问题描述 投票:0回答:1

我有一个包含一些变量的类,我们把它命名为 "Var "类。在 "Var "类中,我有一些变量,如int width,int height等。有些类需要这些变量才能工作,而且这些变量也在变化。我的问题是,当我在不同的类中创建一个 "Var "类的对象时,每个对象都包含自己的int width和int height,而我不希望这样。

java class variables
1个回答
2
投票

简单的解决方案是使用 静态 修饰符,只创建属于该类的变量的一个副本。

另一种方法是创建一个单一的不可改变的Var和 组成 Var引用的其他类。这将 囊括 Var类的字段。

class Var {

    private final int width;

    private final int height;

    public Var(int width, int height) {
        this.width = width;
        this.height = height;
    }

    public int getWidth() {
        return width;
    }

    public int getHeight() {
        return height;
    }

}

那么你可以有一些依赖于Var的类。

public class DependsOnVar {

    private final Var var;

    public DependsOnVar(Var var) {
        this.var = var;
    }

    public void someMethod() {
        int varWidth = var.getWidth();

        int varHeight = var.getHeight();

        // do something
    }

}
© www.soinside.com 2019 - 2024. All rights reserved.