シングルトンを使用して共通の変数を共有する方法を理解するのに苦労しています。私は共通の変数iconCountを共有する必要がある2つのエントリポイントを持つブラックベリーアプリを作ろうとしています。私はフォーラムで誰かがRunTimeStore APIでシングルトンを使うことを勧めました。最終的に周りグーグルでは、につながる:シングルトンを使用して変数を共有する
私はグーグルの深いいくつかのページとなっているが、私はまだこれが何をするのか理解can`tと、それを実装する方法。
class MySingleton {
private static MySingleton _instance;
private static final long GUID = 0xab4dd61c5d004c18L;
// constructor
MySingleton() {}
public static MySingleton getInstance() {
if (_instance == null) {
_instance = (MySingleton)RuntimeStore.getRuntimeStore().get(GUID);
if (_instance == null) {
MySingleton singleton = new MySingleton();
RuntimeStore.getRuntimeStore().put(GUID, singleton);
_instance = singleton;
}
}
return _instance;
}
}
をそして、私はこのシングルトンから変数を作成する方法を別の質問は次のようになります。私の現在の理解では、シングルトンがコードを何らかの形で「グローバル変数」を作成するということですか?最初に変数iconCount = 0を宣言し、それを使用できるようにする必要があります。
Integer iconCount = (Integer) RuntimeStore.getInstance();
のように宣言しますか?私はJavaを始めたばかりなので、これは非常に新しいものです。だれかがこのことを念頭に置いて説明することができれば、あなたは初心者とコミュニケーションしています。私はとても感謝しています。前もって感謝します!
こんにちは、助けをありがとう、 – user1152440
こんにちは、おかげでIconManager.getRuntimeStore()。行(GUID、シングルトン)の行; getRuntimeStore()を持つIconManagerのメソッドが存在しないため、動作しないようです。 RuntimeStore.getRuntimeStore()。put(GUID、singleton)を実行する場合にのみ機能します;今すぐテクニックをテストします – user1152440
@ user1152440はい、ランタイムストアにする必要があります。 – HRgiger