0

私のプログラムでは、ブール値の ArrayList の ArrayList を使用しています。私はこれらの値をクラスからクラスへと運ぶ必要があり、単純にそれを作成することでそうしてきましたstatic

しかし、これは味が悪いかもしれないという風になりつつあります。なしにする最善の方法は、おそらくこれに付随するいくつかの方法を使用して、そのコレクションを中心にオブジェクト (トップレベルのもの) を作成することだと考えていました。

だから私の質問:

  1. これは良いですか?
  2. 値を転送できるように、アプリケーション全体でトップレベル オブジェクトの 1 つのインスタンスを保持するにはどうすればよいですか? 私はプライベートコンストラクターと静的メソッドを考えています。それとも、パブリックフィールドを使用する必要がありますか? 承認された方法は何ですか?
4

2 に答える 2

0

-ArrayListを使用したくない場合は、クラスを作成して、そのArrayListをそのクラスに配置static できます。Singleton

例えば:

public class Test{

  private ArrayList<String> arr = new ArrayList<String>();

  private static Test uniqueInstance = new Test();

  private Test{}      // Make constructor Private

  public static Test getInstance(){

    return uniqueInstance;


   }

}
于 2012-12-05T13:06:15.947 に答える
0

これらの値をクラスからクラスに運ぶ必要があります

コンストラクターの注入はどうですか?

public class A (ArrayList<ArrayList<Boolean>> list)

配線は、Spring などのIOC (制御の反転) フレームワークに委任するか、 DIY-DIを使用して手動で行うことができます。

Singletons私は遠ざかるだろう

于 2012-12-05T13:11:11.937 に答える