面向对象程序的设计课程设计.doc

面向对象程序的设计课程设计.doc

ID:58519507

大小:206.50 KB

页数:22页

时间:2020-05-18

面向对象程序的设计课程设计.doc_第1页
面向对象程序的设计课程设计.doc_第2页
面向对象程序的设计课程设计.doc_第3页
面向对象程序的设计课程设计.doc_第4页
面向对象程序的设计课程设计.doc_第5页
资源描述:

《面向对象程序的设计课程设计.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、课程设计报告课程名称:面向对象程序设计课程设计任课教师:剑伟设计题目:网络聊天室所学专业:信息管理与信息系统(二年制)班级学号:0916150320学生:黄萌萌报告完成日期:2016年01月10日一、题目描述及功能要求实现的是局域网中的聊天功能,运行服务程序后,服务器创建成功,然后使服务器对某一个设定的端口处于监听状态,当有客户端请求建立连接时,服务器就可接受请求,建立连接!这样服务器和客户端就可相互发送消息,实现聊天功能!1.服务端主要功能:l服务端等待多客户连接(守护进程)。l服务端与客户端建立连接。l服务端与客户端交互信息。l服务端与客户端断开连接。

2、l服务端更新客户列表。2.客户端主要功能:l客户端登录。l客户端与服务端建立连接。l客户端与服务端交互信息。l客户端与服务端断开连接。l客户端更新客户列表。二、系统设计1.功能设计启动客户端主界面聊天下线按钮输入界面清屏按钮发送按钮图1聊天室功能结构图2.界面设计图2聊天窗口界面3.技术原理网络连接:方法:TCP/IP协议叫做传输控制/网际协议,它是Internet国际互联网络的基础。TCP/IP是网络中使用的基本的通信协议。虽然从名字上看TCP/IP包括两个协议,传输控制协议(TCP)和网际协议(IP),但TCP/IP实际上是一组协议,它包括上百个各种功

3、能的协议,如:远程登录、文件传输和电子等,而TCP协议和IP协议是保证数据完整传输的两个基本的重要协议。通常说TCP/IP是Internet协议族,而不单单是TCP和IP。介绍方法:客户端步骤:1.创建Socket。根据指定的IP地址或端口号构造Socket类对象。如服务器端响应,则建立客户端到服务器的通信线路。2.打开连接到Socket的输入/出流。使用getInputStream()方法获得输入流,使用getOutputStream()方法获得输出流。3.按照一定的协议对Socket进行读/写操作。通过输入流读取服务器放入线路的信息(但不能读取自己放入

4、线路的信息),通过输出流将信息写入线程。4.关闭Socket。断开客户端到服务器的连接,释放线路。服务器端步骤:1.创建ServerSocket。2.使用accept()产生一个Socket用于与客户端Socket通信。多线程:方法一:继承Thread类建立thread的子类,并覆盖run()方法(thread实现了Runnable接口)对象.start();//开始线程方法二:实现Runnable接口(常用)建立一个类实现Runnable接口,完成run()方法Runnablep=new类名();Threadt=newThread(p);t.start(

5、);//开始线程4.类说明XX类静态属性intPORT=8000端口号为8000Intcount=3面板上的按钮为3个实例属性LablelableTitle标签静态方法Piblicstaticvoidmain主方法实例方法voidsend(String)向服务端发送信息。Publicvoidrun()实现线程PublicvoidinList列表5.难点及其解决方法(1)如何使服务器端保留并区别与客户端的socket连接?与N个客户端相连的话;服务器都有一个对应的socket;也就是N个。为什么TCP的C/S应用中,服务器程序要先于客户端程序执行因为客户端要

6、连接服务器之前先要知道服务器的IP地址和端口号而且这个端口号是处于监听状态的.(2)如何使客户端更新列表信息?一、服务器端写一个WEBSERVICE的回调方法,在客户端调用,只接返回服务器所更新的列表就行了。二、在客户端用一个文件存,并指定时间将文件以XML格式发送给服务器端保持更新。三、系统实现1.源代码见附件。客户端ChatClient.javaimportjavax.swing.*;importjava.awt.*;importjava.awt.event.*;importjava.io.*;importjava.net.*;publicclassC

7、hatClientextendsJFrameimplementsActionListener{JTextAreagetArea=newJTextArea("收发信息:");JLabelgLabel=newJLabel("请输入:");JTextAreasendArea=newJTextArea();JButtonclickButton=newJButton("发送");JButtonclickButton1=newJButton("下线");JButtonclickButton2=newJButton("清屏");JMenuBarjmb=newJMen

8、uBar();JMenufontMenu=newJMenu("字体

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。