91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 487KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發布日期: 2021-06-14
  • 語言: Java
  • 標簽: udp??

資源簡介

基于Java udp協議實現的圖形界面的多人聊天室 ps:客戶端登陸是輸入的用戶名只能是兩個字的姓名

資源截圖

代碼片段和文件信息

package?Chat;

import?java.awt.EventQueue;
import?java.awt.event.ActionEvent;
import?java.awt.event.ActionListener;
import?java.awt.event.WindowEvent;
import?java.net.DatagramPacket;
import?java.net.DatagramSocket;
import?java.net.InetAddress;
import?java.util.Vector;

import?javax.swing.Jframe;
import?javax.swing.JTextArea;
import?javax.swing.JList;
import?javax.swing.JOptionPane;
import?javax.swing.JLabel;
import?javax.swing.JTextField;
import?javax.swing.JButton;
import?javax.swing.JScrollPane;

/**
?*?ChatClient實現網絡聊天室的客戶端,功能是用戶登陸后可以選擇聊天對象進行聊天,也可以接收服務端的廣播信息。
?*?@author?羅成東?201524132129
?*?Date:2018-6-9
?*?Copyright??2018lcd.AllRight?Reserved.
?*?@version?1.0
?*?@since?JDK1.8
?*/
public?class?ChatClient?extends?Jframe?implements?ActionListener?{


private?static?final?long?serialVersionUID?=?1L;
private?Jframe?frame;
private?JTextField?intputField?=?new?JTextField();
private?static?JTextArea?chatcontent?=?new?JTextArea();
private?JButton?btnsend?=?new?JButton(“發送“);
private?JButton?btnexit?=?new?JButton(“退出“);

//構造一個Vector用于存儲在線的用戶
private?static?Vector?v?=?new?Vector();
private?static?JList?user?=?new?JList(v);

//得到一個1000-9999的隨機數,用于客戶端的端口號。
static?int?port?=?(int)?(Math.random()?*?(9999?-?1000?+?1))?+?1000;

//用戶的姓名
String?username;
//標識發送登陸消息數據流的信息頭
private?static?String?load?=?“登陸“;
//標識發送聊天消息數據流的信息頭
private?static?String?message?=?“消息“;
//標識發送退出消息數據流的信息頭
private?static?String?exit?=?“退出“;
//標識發送私聊消息數據流的信息頭
private?static?String?special?=?“私聊“;
//接收登陸消息數據的開始標志
private?static?String?head?=?“head“;
//接收登陸信息數據的結束標志
private?static?String?tail?=?“tail“;

/**
?*?main方法的功能:應用程序的唯一入口
?*?@param?args?String命令行參數的數組
?*?@throws?Exception
?*/
public?static?void?main(String[]?args)?throws?Exception?{
EventQueue.invokeLater(new?Runnable()?{
public?void?run()?{
try?{
ChatClient?window?=?new?ChatClient();
window.frame.setVisible(true);
}?catch?(Exception?e)?{
e.printStackTrace();
}
}
});
//接收客戶端發送的信息
DatagramSocket?ds?=?new?DatagramSocket(port);
receive(ds);

}

/**
?*?ChatClient方法的功能:類的構造函數
?*?@throws?Exception
?*/
public?ChatClient()?throws?Exception?{
username?=?JOptionPane.showInputDialog(“輸入用戶名:“);
initialize();
//把登陸到本客戶端的用戶名和本客戶端的端口號發送到服務端
Send((load?+?Integer.toString(port)?+?username).getBytes());

}

/**
?*?initialize方法的功能:應用程序的界面初始化和按鈕的監聽事件
?*/
private?void?initialize()?{

frame?=?new?Jframe();
frame.settitle(username);
frame.setBounds(100?100?850?400);
frame.setDefaultCloseOperation(Jframe.EXIT_ON_CLOSE);
frame.getContentPane().setLayout(null);
frame.addWindowListener(new?java.awt.event.WindowAdapter()?{
@Override
public?void?windowClosing(WindowEvent?e)?{
try?{
exitsystem();
}?catch?(Exception?e1)?{
//?TODO?Auto-generated?catch?block
e1.printStackTrace();
}

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件??????12788??2018-06-11?14:34??聊天室\程序jar包\ChatClient.jar

?????文件??????12788??2018-06-11?14:34??聊天室\程序jar包\ChatSever.jar

?????文件?????458932??2018-06-11?12:14??聊天室\程序截圖.docx

?????文件???????8380??2018-06-11?08:08??聊天室\程序源代碼\ChatClient.java

?????文件???????8924??2018-06-11?08:10??聊天室\程序源代碼\ChatServer.java

?????文件??????85749??2018-06-11?14:30??聊天室\說明文檔.docx

?????目錄??????????0??2018-06-11?14:36??聊天室\程序jar包

?????目錄??????????0??2018-06-11?11:23??聊天室\程序源代碼

?????目錄??????????0??2018-06-11?14:30??聊天室

-----------?---------??----------?-----??----

???????????????587561????????????????????9


評論

共有 條評論