这篇文章将为大家详细讲解有关事件委托模式怎么在java项目中实现,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
java实现事件委托模式的实例详解
举例说明:
一个班级,有两类学生,A类:不学习,玩,但是玩的东西不一样,有的是做游戏,与的是看电视(有点不合理)
B类:放哨的学生,专门看老师的动向,如果老师进班了就立即通知大家。
如此就形成了一个需求,放哨的学生要通知所有玩的学生:老师来了,而不同的学生有不同的反应,有的马上把电视关闭,有的停止玩游戏。
设计的要求如下,让A类学生和B类学生完全解耦,即A类完全不知道B类的学生,却可以通知B类的学生。
代码及说明如下:
Event 类,定义了一个事件类:
package lnurd.test; import java.lang.reflect.Method; import java.util.Date; public class Event { //要执行方法的对象 private Object object; //要执行的方法名称 private String methodName; //要执行方法的参数 private Object[] params; //要执行方法的参数类型 private Class[] paramTypes; public Event(){ } public Event(Object object,String methodName,Object...args){ this.object=object; this.methodName=methodName; this.params=args; contractParamTypes(this.params); } //根据参数数组生成参数类型数组 private void contractParamTypes(Object[] params){ this.paramTypes=new Class[params.length]; for(int i=0;i<params.length;i++){ this.paramTypes[i]=params[i].getClass(); } } public Object getObject() { return object; } //若干setter getter省略 public void setParamTypes(Class[] paramTypes) { this.paramTypes = paramTypes; } //执行该 对象的该方法 public void invoke() throws Exception{ Method method=object.getClass().getMethod(this.getMethodName(), this.getParamTypes()); if(null==method){ return; } method.invoke(this.getObject(), this.getParams()); } }
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
软考中级精品资料免费领
- 历年真题答案解析
- 备考技巧名师总结
- 高频考点精准押题
- 资料下载
- 历年真题
193.9 KB下载数265
191.63 KB下载数245
143.91 KB下载数1148
183.71 KB下载数642
644.84 KB下载数2756
相关文章
发现更多好内容- 如何在 Java 中获取端口数据?(java怎么获取端口数据)
- 如何在 Java 中实现异步处理?(java怎么实现异步处理)
- Java 写小程序都用到了哪些技术呢?(java写小程序用到的技术有哪些)
- Java 动态数据源切换的方法究竟有哪些?(java动态数据源切换的方法是什么)
- JavaScript函数式编程的亮点有哪些?(JavaScript函数式编程有啥亮点)
- 如何保障 Java 应用程序的安全性?(Java应用程序的安全性如何保障)
- Java 中 aspect 关键字的作用范围是怎样的?(java aspect关键字的作用范围)
- Java 中 BigDecimal 的使用方法究竟有哪些?(java中bigdecimal的使用方法是什么)
- 掌握PHP数据类型转换的技巧:确保准确性
- 在 Java 中,class 类究竟有哪些具体的用法呢?(java中class类的用法是什么)
猜你喜欢
AI推送时光机事件委托模式怎么在java项目中实现
后端开发2023-05-31
怎么在JavaScript中实现事件委托
后端开发2023-06-15
JavaScript中怎么实现事件委托
后端开发2024-04-02
jQuery中怎么实现事件委托
后端开发2024-04-02
js中的事件委托怎么实现
后端开发2023-09-29
Javascript 中怎么实现事件流和事件委托
后端开发2024-04-02
JavaScript中怎么实现事件代理和委托
后端开发2024-04-02
怎么在c#中利用委托事件实现多线程通信
后端开发2023-06-14
怎么在java项目中实现一个单例模式
后端开发2023-05-31
怎么在Java项目中实现一个策略模式
后端开发2023-05-31
怎么在Java项目中实现一个观察者模式
后端开发2023-05-31
怎么在Java项目中实现一个工厂方法模式
后端开发2023-05-31
怎么在Java项目中实现一个简单工厂模式
后端开发2023-05-31
怎么在Java项目中实现一个内置观察者模式
后端开发2023-05-31
责任链模式如何在Java项目中实现
后端开发2023-05-31
解释器模式如何在Java项目中实现
后端开发2023-05-31
迭代器模式如何在java项目中实现
后端开发2023-05-31
在java项目中实现工厂模式的方法
后端开发2023-05-31
怎么中JAVA项目中实现一个访问者模式
后端开发2023-05-31
在Java项目中实现装饰者模式的方法
后端开发2023-05-31
咦!没有更多了?去看看其它编程学习网 内容吧