java打字系统实验报告_Java聊天室系统程序设计实验报告

这是一份关于Java聊天室系统的程序设计实验报告,详细介绍了系统的目标、设计思路、功能实现、性能规定以及开发环境。系统允许用户注册、登录并进行聊天和文件传输,采用C/S模式,通过TCP/IP或RMI进行网络通信。开发环境为Java,实现了用户信息管理、图形界面和多线程编程等功能。
摘要由CSDN通过智能技术生成

41528d3028836879cd698677c3999917.gifJava聊天室系统程序设计实验报告

Java 聊天室系统程序设计实验报告题 目:****** 院 (系):****** 年级专业:****** 学生姓名:****** 指导老师:****** 开始时间:****** 完成时间:******第一部分:课程设计总述课程设计目的:1.学会 Java 程序开发的环境搭建与配置,并在实际运用中学习和掌握Java 程序开发的全过程。2.进一步熟悉掌握 Java 程序设计语言的基础内容,如用户图形界面设计、Java 多线程编程、Applet 程序的设计、文件和网络输入输出流编程、Java 数据库编程等。3.通过亲自动手写程序,一方面拓展知识面,一方面锻炼调试能力。课程设计总体要求:1.问题的描述与程序将要实现的具体功能。2.程序功能实现的具体设计思路或框架,并检查流程设计。3.代码实现。4.程序测试(如程序代码、功能测试、可靠性测试和效率测试等) 。5.设计小结(包括)课程设计题目:目标本软件是一个实用聊天程序。项目要实现以下目标:1)允许用户注册;第 1 页 共 66 页 12)允许注册用户登录聊天室;3)登录用户之间进行聊天文件传输;4)用户可以更改背景音乐; 用户信息的保存本软件只是一个聊天室程序,所以用户只要打开程序就可以登录。本软件使用文本文件或者数据库来保存用户数据。需求分析对功能的规定1.系统的用例图(对注册用户) ÒѵǼÓû§ÁÄÌì Îļþ´«Êä¸ü¸Ä±³¾°¸ü¸Ä±³¾°ÒôÀֲ쿴°ïÖúÍ˳öµÇ¼²ì¿´Óû§Áбí2.用户注册过程第 2 页 共 66 页 2¿ªÊ¼½ÓÜ·þÎñÆ÷ipdµØÖ·ÏÔʾע²á´°¿Ú½ÓÜû§ûºÍÂëµÈÐÅÏ¢¶ÏÊÇ·ñ§ÏÔʾÁÄÌìÒÖ÷½çÃæáøyesno½«Óû§ÐÅÏ¢´Èë·þÎñÆ÷¶ËµÄ¼3.用户登录过程第 3 页 共 66 页 3¿ªÊ¼½ÓÜ·þÎñÆ÷ipdµØÖ·ÏÔʾû§µÇ¼´°¿Ú½ÓÊÜ»§ûºÍÜëÅжÏû§ÊÇ·ñÓÏÔʾÁÄÌìÒÖ÷½çÃæ½áÊøyesno对性能的规定由于本软件只是一个聊天室程序,程序只是提供用户之间的聊天和文件传输,故对网络传输数据要求不是很高,只要正常的传输速度就可以了。需要管理的数据用户的信息如下:用户名,密码,头像,电子邮件,地址。4 开发环境本软件采用 Java 语言编写, Java 语言是一种跨平台的编程语言,所以本软件对操作系统没有特别的要求。而网络传输方面采用 TCP/IP 网络传输协议或者是RMI。总体设计思路系统主要包含两个 java 文件,Server.java 和 UserLogin.java图形界面主要通过\\ org\netbeans\lib\awtextra 目录下的两个类:AbsoluteConstraints.class 和 AbsoluteLayout.class 来控制。启动系统通过依次点击批处理文件:1.bat,2.bat第 4 页 共 66 页 4Server.java 中包含:其中 Server 类又包括如下类和方法:第 5 页 共 66 页 5UserLogin.java 包括:其中 UserLogin 类又包括如下类和方法:第 6 页 共 66 页 6而 UserLoginWindow 类又包含如下事件和方法:第 7 页 共 66 页 7第 8 页 共 66 页 8系统为 C/S 模式。首先根据功能模块将系统分为两部分:服务端(Server)和客户端(UserLogin) 。然后构造可以序列化的 User 类,这是本系统的对象。根据需求功能细分类和方法。建立文件和网络的传输通信。实现聊天室的基本功能具体设计代码://server.javaimport javax.swing.*;import java.awt.*;import java.awt.event.*;import .*;import java.io.*;import java.util.*;//用户信息class User implements Serializable{String UserName;String UserPassword;String UserHeadPhoto;String UserEmail;String UserAge;String SinkName;String FileName;byte FileData[];String Message;String Command;Vector vectorUserList;}public class Server extends JFrame {static Vector vectorStreamToUser=new Vector(1,1);static Vector vectorUserList=new Vector(1,1);private ServerSocket serverSocket;private JMenuItem aboutMenuItem;private JMenu commandMenu;private JMenu fileMenu;private JMenu helpMenu;private JMenuItem helpMenuItem;private JLabel jLabel1;private JLabel jLabel2;private JLabel jLabel3;第 9 页 共 66 页 9private JLabel jLabel4;private JLabel jLabel5;private JList jList1;private JPanel jPanel1;private JScrollPane jScrollPane1;private JMenuItem warnMenuItem;private JMenuItem kickMenuItem;private JMenuBar menuBar;private JMenuItem msgMenuItem;private JMenuItem startMenuItem;private JMenuItem stopMenuItem;//右键事件菜单private static JPopupMenu menu;private String BlackList; //建立 server 框架public Server() {initComponents();}private void initComponents() {jPanel1 = new JPanel();jLabel2 = new JLabel();jLabel3 = new JLabel();jLabel4 = new JLabel();jLabel5 = new JLabel();jScrollPane1 = new JScrollPane();jList1 = new JList();jLabel1 = new JLabel();menuBar = new JMenuBar();fileMenu = new JMenu();startMenuI

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值