在 Java 里,“Event(事件)”并不是某一种固定类,而是根据应用场景分为很多类型。下面按常见领域给你系统梳理一下。
这是最早、最经典的事件体系。
MouseEvent
MouseListener
mouseClickedmousePressedmouseReleasedmouseEnteredmouseExitedMouseMotionListener
mouseDraggedmouseMovedKeyEvent
KeyListener
keyPressedkeyReleasedkeyTypedWindowEvent
WindowListener
windowOpenedwindowClosingwindowClosedwindowIconifiedwindowDeiconifiedwindowActivatedwindowDeactivatedActionEvent(按钮点击、菜单选择)ItemEvent(复选框、下拉框)FocusEvent(焦点变化)ComponentEvent(大小、位置变化)JavaFX 使用更现代的事件体系。
ActionEventMouseEventKeyEventScrollEventDragEventWindowEventJava 本身提供事件模型:
class MyEvent extends EventObject { }
interface MyListener extends EventListener {
void onEvent(MyEvent e);
}
Spring 提供成熟的事件总线。
ContextRefreshedEventContextStartedEventContextStoppedEventContextClosedEventRequestHandledEventpublic class OrderEvent extends ApplicationEvent {}
监听方式:
ApplicationListener@EventListenerServletContextEventHttpSessionEventFlux, MonoJava 的 Event 事件类型 取决于使用场景:
GUI(AWT/Swing/JavaFX)、Spring、Servlet、自定义事件、响应式编程等各有不同体系。
如果你有具体场景(比如:Swing?Spring?自定义事件?),我可以给你更针对性的解答。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。