資源簡介
運用多線程和socket實現群聊的功能,分為客戶端和服務端

代碼片段和文件信息
import?java.net.*;
import?java.io.*;
import?java.util.*;
public?class?ClientThread?
{
Socket?socket=null;
ServerSocket?ss=null;
public?ClientThread()
{
try
{
socket=new?Socket(“192.168.12.104“8888);
//需要建立一個Socket,連接“誰”,連接“誰”的哪個端口
InputStream?is=socket.getInputStream();
DataInputStream?in=new?DataInputStream(is);
OutputStream?os=socket.getOutputStream();
DataOutputStream?out=new?DataOutputStream(os);
SendMessage?sm=new?SendMessage(out);
ReadMessage?rm=new?ReadMessage(in);
sm.start();
rm.start();
}
catch(IOException?e)
{
e.printStackTrace();
}
}
public?static?void?main(String?args[])
{
new?ClientThread();
}
}
class?SendMessage?extends?Thread
{
DataOutputStream?out;
public?SendMessage(DataOutputStream?out)
{
this.out=out;
}
public?void?run()
{
try
{
Scanner?sc=new?Scanner(System.in);
while(true)
{
System.out.println(“請輸入你要發送的內容:“);
String?message=sc.next();
out.writeUTF(message);
out.flush();
}
}
catch(IOException?e)
{
e.printStackTrace();
}
}
}
class?ReadMessage??extends?Thread{
DataInputStream?in;
public?ReadMessage(DataInputStream?in){
this.in=in;
}
public?void?run(){
String?Message=null;
try
{
while(true)
{
Message=in.readUTF();
System.out.println(“ClientThread消息:“+Message);
}
}
catch(IOException?e)
{
e.printStackTrace();
}
}
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????1529??2018-11-11?13:07??群聊\ClientThread.java
?????文件???????2060??2018-11-11?13:07??群聊\ServerThread.java
?????目錄??????????0??2018-12-04?07:08??群聊
-----------?---------??----------?-----??----
?????????????????3589????????????????????3
- 上一篇:軟考中級-系統集成項目管理工程師--資料.txt
- 下一篇:新聞自動分類部分代碼
評論
共有 條評論