欢迎来到天天文库
浏览记录
ID:43403326
大小:76.50 KB
页数:10页
时间:2019-10-02
《Java简单聊天室设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、1.课程设计目的在当今的信息时代,越来越多的聊天工具被应用,Java语言是当今流行的网络编程语言,它具有面向对象、与平台无关、安全、多线程等特点。使用Java语言不仅可以实现大型企业级的分布式应用系统,还能够为小型的、嵌入式设备进行应用程序的开发。面向对象的开发方法是当今世界最流行的开发方法,它不仅具有更贴近自然的语义,而且有利于软件的维护和继承。为了进一步巩固课堂上所学到的知识,深刻把握Java语言的重要概念及其面向对象的特性,锻炼我们熟练的应用面向对象的思想和设计方法解决实际问题的能力,开设了Java程序设计课程设计。此次课程设计的题目为简单的聊天室,通过做巩
2、固所学Java语言基本知识,增进Java语言编辑基本功,掌握JDK、JCreator等开发工具的运用,拓宽常用类库的应用。使我们通过该教学环节与手段,把所学课程及相关知识加以融会贯通,全面掌握Java语言的编程思想及面向对象程序设计的方法,为今后从事实际工作打下坚实的基础。2.设计方案论证2.1设计思路Java是一种简单的,面向对象的,分布式的,解释的,键壮的,安全的,结构中立的,可移植的,性能很优异的,多线程的,动态的语言。Java去掉了C++语言的许多功能,如:指针运算、结构、typedefs、#define,让Java的语言功能很精炼,并增加了一些很有用的功
3、能,如自动收集碎片。这将减少平常出错的50%。而且,Java很小,整个解释器只需215K的RAM。因此运用JAVA程序编写聊天室,实现简单聊天功能。本次课程设计做的是Java简单聊天室,它是图形界面、线程、流与文件等技术的综合应用,其界面主要采用了java.awt包,javax.swing包等。程序实现了聊天室的基本功能,其中有:(1)启动服务器:实现网络的连接,为注册进入聊天室做准备。(2)注册登陆界面:填写基本信息如姓名等,可以供多人进入实现多人聊天功能。(3)发送信息:为用户发送信息提供平台。(4)离开界面:使用户退出聊天室。(5)关闭服务器:断开与网络的连
4、接,彻底退出聊天室。2.2设计方法在设计简单聊天室时,需要编写5个Java源文件:Server.java、Objecting.java、LogIn.java、ClientUser.java、Client.java。聊天室除了需要编写的上述5个Java源文件所给出的类外,还需要Java系统提供的一些重要的类,如JTextField、JTextArea和File类。2.3运行环境CPU:Pentium2.8GHz以上内存:256MB以上硬盘空间:80G以上操作系统:WindowsXP运行环境:JDK,JCreator2.3流程图:发送chartroom服务器端客户端界
5、面接收入接收发送监听器结束接口接口输入输出输入输出3.源代码:importjava.awt.*;importjava.awt.event.*;importjava.util.ArrayList;importjava.util.List;importjava.io.*;importjava.net.*;publicclasschartroomextendsFrameimplementsActionListener{privateTextAreaoperation,memorytext;//输入框和输出框privateButtonsend,kaiguan,name,c
6、s;//发送,开关,昵称,连接服务器按钮privateTextFieldiparea,lstname;//IP,昵称输入框privateLabelip;//标签IPprivateSimpleDialogdialog;//昵称弹出框Sockets=null;DataOutputStreamdos=null;//输出流DataInputStreamdis=null;//输入流privatebooleanbConnect=false;//连接确认publicStringb,chartname;//publicFilejilu;//聊天记录privateServerser
7、=newServer();//服务器privateStringgetLocalIp(){//获取本地IP的方法Stringip="";try{InetAddressinetAddress=InetAddress.getLocalHost();ip=inetAddress.toString();ip=ip.substring(ip.indexOf('/')+1);}catch(Exceptione){System.out.println("ingetLocalIp()"+e);}returnip;}publicchartroom()//构造函数{ser.start(
8、);//启
此文档下载收益归作者所有