У меня есть класс с именем Neuron, и когда объект Neuron срабатывает, он сигнализирует об срабатывании всех объектов класса Synapse. Я не уверен, как отправить сигнал в Synapse из класса Neuron, кто-нибудь может объяснить?
Java Discrete Event Simulation, как сигнализировать о классе другого объекта
comment
Сработал ли для вас какой-либо из двух предложенных ответов?
- person Paul MacGuiheen   schedule 05.04.2016
Ответы (2)
Класс Neuron может быть источником событий для класса Synapse с помощью PropertyChangeSupport класс. Классы Synapse регистрируются как слушатели, а класс Neuron инициирует событие по мере необходимости.
person
Paul MacGuiheen
schedule
05.04.2016
Объект Neuron должен содержать список всех экземпляров объекта Synapse, только тогда он сможет отправлять события или сигналы объектам Synapse. Это похоже на шаблон Observer. Чтобы дать вам представление о том, как это будет работать, см. следующее
class Neuron {
List<Synapse> subscribers = new ArrayList<>();
private Neuron neuron;
private Neuron(){}
public static Neuron getInstance(){
if(neuron == null)
neuron = new Neuron();
return neuron;
}
public void addSubscribers(Synapse s){
subscribers.add(s);
}
public void fireEvent(Event x){
for(Synapse s: subscribers){
subscriber.notifyEvent(x);
}
}
}
class Synapse{
public void subscribe(){
Neuron.getInstance().subscribe(this);
}
public void NotifyEvent(Event x){
//to somthing...
}
}
person
Mohit Aggarwal
schedule
05.04.2016