来自结构化对象编程的人提出的基本问题...希望不要太基础。

我想拥有由我的应用程序内的不同类共享的大量数据。
最佳做法是什么?
这个对吗?

public class LargeData {
    private static long[] myData;
    private static final int MAX = 100000;

    public LargeData() {
        myData = new long[MAX];
        // ... initialize
    }

    public long getData(int x) {
    // ... do whatever and return a long
    }
}


如果这是正确的,那么如何从我的任何类中访问此数据的正确方法呢?我应该做一个

LargeData ld = new LargeData();


每个想要访问myData的类中?

谢谢你,太抱歉了... :)

最佳答案

每次打电话

LargeData ld = new LargeData();


在您的代码中,您将有效地调用

myData = new long[MAX];


这是错误的。

您可以做的是:

public class LargeData {

    private static final int MAX = 100000;
    public static long[] myData = new long[MAX];
}


并可以从任何地方以LargeData.myData身份访问。

07-27 16:47