今天上网查了N多关于java事件响应的原理,但能搜索到的基本都是说如何如何实现java事件监听,没有找到想要的结果。有没有谁懂得,java在实现监听的时候底层是如何实现的?想要细致到数据结构级别的,如果能把线程或者进程如何操作数据(我想应该有消息链表),比如鼠标点击,产生了一个事件对象,这个对象是如何存放的(这个应该是面向对象都要解决的问题)。组件被注册上了一个监听器,在内存的数据,谁的数据进行了哪些修改?它们的数据结构是什么样的?所谓的事件对象被发送到监听者,实际的操作是什么(归根结底应该还是函数调用)?
所谓的监听器,也就是一段小程序比如你要监听 Peson类的创建,只需要在Person类的构造中 加上监听器即可比如你要监听Person类中某个方法的执行,只需要在方法中加上监听器即可,喜欢的话你 还可以把方法的参数传到你的监听器中去做某些处理比如你要箭筒Person类的销毁,你可以先为Person类添加一个destory方法,再在该方法中调用监听器即可当然了,这些都是入侵式的监听,会破坏你的Person类中原有代码(你添加了监听器的额外代码不是吗?),是不提倡的,为了方便你理解我才举了以上的例子正儿八经的监听器一般是切面式的,或者通过代理类增强的(这句话忽视也没关系)这么通俗易懂的比喻应该看得懂吧
在说白点,相当于人的神经反射一样,并不是由你自己的主动去知道,而是神经的自然反射,跟java无关