- 1、本文档共23页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
PAGE3
附件二【学生用】
西北农林科技大学信息工程学院
《面向对象程序设计实践》实习报告
题目:简易聊天软件
学号
2015012755
姓名
罗键昆
专业班级
电子商务1501
指导教师
王美丽老师
实践日期
2017年6月26日-7月7日
目录
TOC\o1-3\h\z\u一、综合训练目的与要求 1
二、综合训练任务 1
三、总体设计 1
四、详细设计说明 7
五、调试与测试 16
六、实习日志 17
七、实习总结 20
八、附录:核心代码清单 20
PAGE1
一、综合训练目的与要求
目的
学生通过利用面向对象程序设计思想进行项目开发,加深学生对面向对象程序设计核心思想的理解,提高的编程能力,掌握撰写规范程序设计文档的能力,为今后从事软件开发打下必要的基础。
要求
通过本实践性教学环节,巩固学生理解和掌握面向对象程序设计的类、对象、继承、接口等主要内容。将理论与实践结合,提高学生利用面向对象程序设计思想开发程序的能力。
二、综合训练任务
简易聊天软件要求:仿QQ软件,开发简洁美观的界面,实现注册、登录、查找好
友,文件传输和双人或多人聊天等基本功能。
三、总体设计
根据题目要求和需求分析,我对简易聊天软件的总体设计如下:
图1用例图
图2类图
图3活动图_注册
图4活动图_登录
图5活动图_查找好友
图6活动图_群聊
图7活动图_截图
四、详细设计说明
图8-1类图_Clientframe
图8-2运行结果_Clientframe
登录界面
界面构成
头像,Logo,背景均为JLabel。
UI风格为Nimbus风格(以下均同)。
清除窗口装饰,并通过JLabel设计图标及其对应监听器(以下均同)。
功能构成
无界面拖动功能:没有窗口修饰下实现拖动(以下均同)。
注册账号:新建注册界面。
找回密码:新建找回密码界面。
登录:客户端先判断基本的账号、密码是否输入,之后调用客户端写信息线程对服务器发送请求。
图9-1类图_Clientframe_register
图9-2运行结果_Clientframe_register
注册账号界面
界面构成
提示信息、头像为JLabel,密码框与输入密码框为JPasswordField,头像选择框为JComboBox,其余输入框均为JTextField。
功能构成
注册:发送注册请求到服务器建立数据库数据。
返回:返回登录界面。
图10-1类图_Clientframe_control
图10-2运行结果_Clientframe_control
控制界面
界面构成
头像为JLabel,用户信息为自定义的JList,它的模型为继承AbstractListModel的ArrayList,它的列表项继承了JLabel和实现了ListCellRenderer,详细如图10-1类图_Clientframe_control
功能构成
查看好友信息:点击好友头像查看信息。
刷新好友列表:直接刷新好友列表。
发起群聊:发起多人聊天。
添加好友:根据昵称、账号、地址等信息进行精确和模糊查找。
吸附功能:类似QQ,贴近上边缘自动吸附。
图11-1类图_Clientframe_add
图11-2运行结果_Clientframe_add
添加好友界面
界面构成
提示信息为JLabel,输入框为JTextField和一个添加按钮Button
功能构成
精确添加好友:查找好友唯一时直接添加好友。
模糊添加好友:查找好友不唯一时弹出选择框由用户选择添加好友。
图12-1类图_Clientframe_chat
图12-2运行结果_Clientframe_chat
聊天界面
界面构成
输入和输出窗口为JtextArea,发送按钮为Button,背景、截图功能为JLabel。
功能构成
群发信息:发送群发请求给服务器接着转发给所有客户端。
截图功能:截图,并能显示截图点RGB值和截图大小,最终以当前时间命名保存桌面。
图13类图_Server
服务器类
界面构成
无界面,运行后打印。
功能构成
获得服务器:可以获得服务器唯一实例,一个服务器对应多客户端,保证线程安全。
获得在线客户端集合:每登录一个客户端便存储在集合中,调用群发信息时使用。
图14类图_ServerJDBC
服务器连接数据库类
界面构成
无界面,供调用数据库时使用。
功能构成
查询功能:执行查询语句,返回ResultSet。
更新功能:执行
文档评论(0)