他のクラスから変数の更新値を取得しようとしています。変数の値は更新されていますが、それ自身のクラスに対してのみです。参照によって値にアクセスしようとしている別のクラスは、まだ古い値を取得しています。更新のためにclass1
に変数private boolean
が存在するとします。 class2
は、getter method
することにより、このような何かclass1
のboolean
変数にアクセスしている間:変数state
の値がここActionEvent
Java変数の更新された値を取得するには?
CLASS 2 CODE:
class B {
void go() {
A a = new A();
while(true) {
if(a.getState()) {
//CODE
}
}
}
}
で更新し続け、私は常に取得しています。ここ
CLASS 1 CODE:
class A {
private boolean state;
boolean getState() {
return state;
}
}
をで値が更新されていますが、の元の値がclass B
に変わります。では、別のクラス参照から変数の更新された値を取得するにはどうすればよいですか?
EDIT: それはちょっと奇妙だが、この方法は、何らかの形での変数の更新を呼ばれたときやリフレッシュ。このように:
CLASS 2 CODE:
class B {
void go() {
A a = new A();
while(true) {
System.out.println(a.getState());
if(a.getState()) {
//CODE
}
}
}
}
だけSystem.out.println(a.getState());
を添加した後、我々は、更新された値を取得しています。説明してください!
ようにする必要がありジュスト任意のクラスであなたのbolleanを使用することができます。最大1つのライン! –
次に、このコードを正確に使用している場合は、デフォルトの状態値をtrueに設定する必要があります。このコードは決して// CODEに到達しないためです。プライベートブール状態=真; –
ご覧ください、私は質問を編集しました。あなたのところに来て、私は、 '状態 'が' ActionEvent'によって 'true'にならない限り、//コードがトリガーされることを望ましくありません。 –