我是Java GUI的新手。所以说如果我有一个按钮并且我没有提供事件处理程序,那么谁将处理该事件?它与事件调度程序线程事件处理程序有关吗? 请解释一下事件监听器的作用是什么,虽然我有处理程序? 事件处理和异常处理是否以相同的方式工作? 谢谢 问候
答案 0 :(得分:2)
Nobdy会听到它。 Java Swing(和其他GUI库)中的事件机制类似于侦听器(发布/订阅)模式。如果没有注册列表,则没有人会处理该事件。
看看这个: http://www.programcreek.com/2009/01/the-steps-involved-in-building-a-swing-gui-application/。 通常:发布者(例如JButton)发布许多事件:鼠标点击,鼠标悬停等。任意数量的订户(MouseAdapter,...)可以注册。每次发布特定类型的事件(例如MouseEvent)时,右侧列表器就会放置并执行它的操作。
发布商不知道注册了多少订阅者。通过这种方式,他们松散耦合
答案 1 :(得分:0)