.Net与Java Swing相比的示例分析
发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,.Net与Java Swing相比的示例分析,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。学习过Java Swing的读
千家信息网最后更新 2025年11月07日.Net与Java Swing相比的示例分析
.Net与Java Swing相比的示例分析,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
学习过Java Swing的读者一定对于Swing中相对较为复杂的事件驱动模型比较困惑,虽然事件驱动模型在Java Swing中被完完全全的体现出来了,但是对于一个软件初学者而言这样的近乎"裸体"的事件驱动模型确实是很难理解的。
Microsoft公司.Net与Java Swing的GUI编程相比要简单很多,同样是事件驱动模型.Net框架就进行了大量的封装处理,.Net把这种封装称之为委托器(Delegate)其代码如下:
//当btnSubmit按钮被点击以后要求交给btnSubmit_Click方法处理 // EventHandler在中间启到委托器的作用, //它负责将事件分发到指定的方法中进行处理 this.btnSubmit.Click += new EventHandler(this.btnSubmit_Click); //事件处理方法 // object sender:事件源,这里指btnSubmit对象 // EventArgs e:事件处理参数,它保存了需要提供给程序员的必要信息 private void btnSubmit_Click(object sender, EventArgs e) { //打印This is a button语句 System.Diagnostics.Debug.WriteLine("This is button"); }作为.Net与Java Swing对比,我们来看看Java Swing的事件处理和委托就要复杂很多:代码如下:(您若还不是很了解Swing事件驱动的话,可以参考我的另外一篇文章:事件驱动模型实例详解(Java篇)):
//为btnSubmit增加侦听器SelectHandler,当btnSubmit被点击以后 //有侦听器的actionPerformed负责处理该点击事件的业务 //由于事件源btnSubmit和侦听器类SelectHandler处于两个不同的类中 //为了让SelectHandler类取得页面的信息,我们需要将窗体对象(this) //传入到侦听器中 btnSubmit.addActionListener(new SelectHandler(this)); //侦听器SelectHandler,它必须实现动作事件ActionListener接口 //以达到事件分发的作用 class SelectHandler implements ActionListener { private CommonDialogDemo form = null; //将窗体对象CommonDialogDemo通过构造函数传入SelectHandler类中 public SelectHandler(CommonDialogDemo form) { this.form = form; } //事件处理方法,当btnSubmit被点击,自动执行以下打印代码 publicvoid actionPerformed(ActionEvent e) { System.out.println("This is button"); } }根据以上代码,我们可以清晰的看到.Net与Java Swing相比,Java Swing的麻烦的多,而且更不能让人忍受的就是,一个页面如果有多个按钮的话,我们必须针对每个按钮编写多个事件侦听类,而且这些类一般都会被设为内部类。学过软件建模的读者可能知道,内部在软件建模在软件工程中是不推荐使用的,所以这样的代码编写明显会增加设计冗余度和复杂度,因此我们可以考虑自己编写一个类似于。Net中EventHandler一样的事件委托类来处理事件分发。
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。
事件
处理
驱动
代码
侦听器
模型
方法
软件
委托
复杂
对象
按钮
作用
信息
多个
窗体
读者
页面
学习
封装
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
橙道网络技术
几十万服务器
网络安全保密提示
到哪里学习网络安全
局域网登录钉钉服务器地址
网易版生存联机服务器推荐
天津 网络安全领导小组
淘宝网上书店数据库
贵州软件开发公司有哪些
网络技术对人才的要求
青云流量服务器
网络安全的关键及核心
盘锦企业服务器轻松办理
服务器多大内存
网络安全隐患整改会
软件开发学不会怎么办
丹阳市苏菲亚网络技术有限公司
lol连不上聊天服务器
管理E9000服务器
求生之路2最佳服务器掉线
数据库中的专业用户是哪些人
cf地图工坊无法连接服务器
山西万城互联网科技有限公司
金蝶kis云数据库
医院建立网络安全监测预警制度
数据库技术人员名单导入
部队网络安全简笔画
车易网络技术有限公司
二手服务器回收
临漳租房软件开发