《面向对象程序设计(Java)》课程设计报告
课程设计说明书
班级: 姓名:
学号:
设计题目: 网络聊天系统
设计时间: 至
指导教师:
评 语:_________________________________
_________________________________________
_________________________________________
_________________________________________
_________________________________________
评阅成绩:__ __评阅教师:__ ___
-I-
《面向对象程序设计(Java)》课程设计报告
目 录
1 引 言..........................................................................................................................1
1.1 课程设计选题...................................................................................................1
1.2 课程设计的目的...............................................................................................1
1.3 本选题的设计背景...........................................................................................1
1.1 功能需求...........................................................................................................2
1.2 性能分析...........................................................................................................2
1.3 系统的开发运行环境.......................................................................................3
1.4 系统体系结构设计...........................................................................................3
3.2 系统功能模块及主要类设计...........................................................................3
4.1 登录模块...........................................................................................................4
1.4.1 .功能设计................................................................................................4
1.4.2 界面设计.................................................................................................5
1.4.3 关键代码.................................................................................................6
1.4.4 调试与测试.............................................................................................6
1.5 主窗体模块.......................................................................................................7
1.5.1 功能设计.................................................................................................7
1.5.2 界面设计.................................................................................................7
1.5.3 关键代码.................................................................................................9
1.5.4 调试与测试...........................................................................................10
1.6 服务器端模块.................................................................................................11
1.6.1 功能设计...............................................................................................11
1.6.2 界面设计...............................................................................................11
1.6.3 关键代码...............................................................................................12
1.7 网络模块.........................................................................................................12
-II-
《面向对象程序设计(Java)》课程设计报告
1.7.1 功能设计...............................................................................................12
1.7.2 关键代码...............................................................................................12
1.7.3 调试与测试...........................................................................................13
1.8 文件传送模块.................................................................................................14
1.8.1 功能设计...............................................................................................14
1.8.2 界面设计...............................................................................................14
1.8.3 关键代码...............................................................................................15
1.8.4 调试与测试...........................................................................................15
1.9 存在尚未解决的问题.....................................................................................16
使用说明书..........................................................................................................18
源程序清单..........................................................................................................19
-III-
1 引 言
1.1 课程设计选题
《网络聊天系统》
要求有单独的客户端,服务器端。该聊天系统实现图形界面下的聊天功能。
1.2 课程设计的目的
使学生巩固和加深以 Java 语言为基础的面向对象编程技术理论知识的理解,提高
实际动手编程能力的培养,掌握以 Java 为核心的应用软件开发方案,达到能独立阅读、
编制和调试一定规模的 Java 程序的水平。一步熟悉掌握 Java 程序设计语言的基础内容,
特别是 swing 用户图形界面和 Java 数据库编程等。通过一个完整项目的独立开发,一
方面拓展知识面,锻炼调试能力,一方面让学生了解项目开发的大致过程。
1.3 本选题的设计背景
本学期开设 java 程序设计,使我们了解了当前主流的编程语言是怎么工作的,
java 语言最大的特点就是封装性,继承性,多态性,当前市场上很多开发都是用 java
开发的,java 语言以它优良的特点,备受青睐,它有着自己的易用特点与性能优势,
比如跨平台、安全性、多线程、网络 Socket 编程、数据流概念等方面,因此它有着去
其它语言无法比拟的优越感。本系统是以 J2SE(Java 2 Standard Edition)语言实现的网络
即时通信工具,包括服务器端和客户端,可以在企业内部网络和互联网上运行,同时具
有 Java 应用的跨平台特性,方便运行在各个系统之上。我们是网络专业,对于专业中
的东西需要深入的学习,基于 java 的网络聊天程序,正是将两者完美的结合起来,使
我们在学习了 java 的同时,也对于网络中数据的传送有了深入的了解,正是基于以上
的背景,选用了基于 java 平台的网络即时聊天系统。
需求分析
1.1 功能需求
客户需要一种能在局域网内部使用,也可在公网中使用,基本具有如下功能的即
时聊天系统。
1、任何用户通过注册可以登录到本聊天室中。
2、在本聊天室中,可以通过群聊的方式来和每位在线用户进行多用户交流。
3.、用户也可以选择与某位在线用户进行私聊,当进行私聊的过程中, 其他在线
用户无法收到两位用户私自聊天的内容,为用户进行了隐私保护。
4.、用户可以向某位在线用户发送震动窗口指令,发送成功后,对方将收到窗口
震动,系统并提示某某用户给发的窗口震动。
5.、用户可以向某位在线用户传送文件,接收方可以选择接受文件也可以拒绝文
件的接收。
6、所有用户信息都有服务器同样管理,只有当服务器运行时,客户端才能基于
服务器传送消息。
1.2 性能分析
性能分析从服务器端和客户端两个方面进行。
1.服务器端应当建立一个 ServerSocket,并且不断进行侦听是否有客户端连
接或者断开连接(包括判断没有响应的连接超时)。
2.服务器端应当是一个信息发送中心,所有客户端的信息都传到服务器端,
由服务器端根据要求分发信息。
以上就是服务器端最主要的两个任务。不难看出,服务器端的任务并不复杂。
客户端应该完成的工作包括: