Java プログラミングに問題があります。クラスのすべてのオブジェクトが Java で同時にメソッドを呼び出すようにするにはどうすればよいですか?
少し早いですがお礼を。
あなたの質問について私が理解していることから、クラスのすべてのインスタンスをコレクションに保持してから、それらを反復処理して、それらすべてに対して必要なメソッドを呼び出さないのはなぜですか?
あなたの質問について私が理解したコードの例を次に示します。
public class Flip {
private static List<Flip> instances = new ArrayList<Flip>();
[... fields, etc]
public Flip() {
[...init the fields]
synchronized(instances) {
// if you access the instances list, you have to protect it
instances.add(this); // save this instance to the list
}
}
[... methods]
public void calculate() {
synchronized(instances) {
// if you access the instances list, you have to protect it
for (Flip flip : instances) {
// call the doCalculate() for each Flip instance
flip.doCalculate();
}
}
}
private void doCalculate() {
[... here comes the original calculation logic]
}
}
重要な点は、Flip のすべてのインスタンスを何らかの形で登録する必要があるということです。後でそれらを繰り返すことができます。