阅读量:0
在Java中,实现触发器的最佳方法是使用观察者模式
首先,创建一个触发器接口:
public interface Trigger { void onEvent(); }
然后,创建一个事件类,该类将通知已注册的触发器:
import java.util.ArrayList; import java.util.List; public class Event { private List<Trigger> triggers = new ArrayList<>(); public void addTrigger(Trigger trigger) { triggers.add(trigger); } public void removeTrigger(Trigger trigger) { triggers.remove(trigger); } public void notifyTriggers() { for (Trigger trigger : triggers) { trigger.onEvent(); } } }
接下来,创建一个具体的触发器类,该类实现了Trigger接口:
public class ConcreteTrigger implements Trigger { private String name; public ConcreteTrigger(String name) { this.name = name; } @Override public void onEvent() { System.out.println("ConcreteTrigger " + name + " has been triggered."); } }
最后,在主程序中创建事件对象并注册触发器:
public class Main { public static void main(String[] args) { Event event = new Event(); Trigger trigger1 = new ConcreteTrigger("Trigger 1"); Trigger trigger2 = new ConcreteTrigger("Trigger 2"); event.addTrigger(trigger1); event.addTrigger(trigger2); // 模拟触发事件 event.notifyTriggers(); } }
运行此程序将输出:
ConcreteTrigger Trigger 1 has been triggered. ConcreteTrigger Trigger 2 has been triggered.
这是一个简单的示例,您可以根据需要扩展和修改这些类以实现更复杂的触发器逻辑。