- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
JAVA简单的网络聊天程序
本 科 课 程 设 计
课程设计题目: 简单的网络聊天程序
课程设计报告
1.设计目的:
课程设计题目:简单的网络聊天程序 目的与任务:
目的:熟悉网络编程的知识和技能,掌握Socket编程的方法。
任务:完成网络聊天程序的编制与调试。 要求:
1.分析聊天程序的功能需求。
2.采用自己熟悉的开发环境和语言完成设计任务,如:Java、C++、Visual Basic、SQL server等。
3.课程设计报告内容包括,课程设计的目的、设计任务、要求、设计说明书。
4.设计说明书包括:需求分析、概要设计、详细设计。
5.设计成果包括:主要运行界面、主要代码、测试结果、总结、参考资料。 总体设计:(聊天室所包含的功能模块)
客户端及服务器端程序的整合
用户列表模块设计 文本聊天模块设计
程序界面设计 群聊 工作安排:
利用网络程序编程来完成这一次课程设计,并且用到多线程和图形界面处理,最后完成课程设计报告。
提交内容:
每位同学提交书面设计报告一份(每人一份)
程序源代码 批语: 成绩:
序言
1.1 背景
在当今的信息时代,越来越多的聊天工具被应用 ,Java语言是当今流行的网络编程语言,它具有面向对象、与平台无关、安全、多线程 等特点。使用Java语言不仅可以实现大型企业级的分布式应用系统,还能够为小型的、嵌入 式设备进行应用程序的开发Java语言的重要概念及其面向对象的特性,锻炼我们熟练的应用面向对象的思想和设计方法解决实际问题的能力,开设了Java程序设计课程设计。
此次课程设计的题目为简单的聊天室,通过做巩固所学Java语言基本知识,增进Java语言编辑基本功,掌握JDK、JCreator等开发工具的运用,拓宽常用类库的应用。使我们通过该教学环节与手段,把所学课程及相关知识加以融会贯通,全面掌握Java语言的编程思想及面向对象程序设计的方法,为今后从事实际工作打下坚实的基础。
1.2 相关技术
CPU:Pentium 2.8GHz以上
内存:256MB以上
硬盘空间:80G以上
操作系统:Windows7
运行环境:eclips
2. 程序设计与实现
2.1需求分析
Java是一种简单的,面对象的,分布式的,解释的,键壮的安全的,结构中立的,可移植的,性能很优异的多线程的,动态的语言Java去掉了C++语言的许多功能,如:指针运算、结构、typedefs、#define让Java的语言功能很精炼,并增加了一些很有用的功能,如自动收集碎片。这将减少平常出错的50%。而且,Java很小,整个解释器只需215K的RAM。Java简单聊天室,它是图形界面、线程、流与文件等技术的综合应用其界面主要采用了包 程序实现了的基本功能有:
图1 程序基本框图
2.3 代码实现
3.系统详细设计:
客户端:
package 课程设计;
import java.awt.*;
import java.awt.event.*;
import java.net.*;
import java.io.*;
import javax.swing.JOptionPane;
public class TClient
{
public static void main(String[] args)
{
new TCPClient().launch();
}
}
class TCPClient
{
private TextArea ta = null;
private TextField tf = null;
private Button bn = null;
private DataInputStream dis = null;
private DataOutputStream dos = null;
private Socket s = null;
private Frame f = null;
public void launch()
{
createUI();
connect();
new TCPClientReader().start();
new TCPClientWriter().start();
}
public void createUI()
{
f = new Frame(客户端);
f.setLocation(300, 200);
ta = new TextArea();
tf = new TextField();
Panel p = new Panel(new BorderLayout
文档评论(0)