亚洲精品久久久久久第一页-人妻少妇精彩视品一区二区三区-91国产自拍免费视频-免费一级a在线播放视频正片-少妇天天日天天射天天爽-国产大屁股喷水视频在线观看-操美女骚穴抽插性爱视频-亚洲 欧美 中文字幕 丝袜-成人免费无码片在线观看

2021手機qq創(chuàng)建討論組 qq如何創(chuàng)建多人聊天不是群聊( 三 )


if (!msg.equals(“”)) {
System.out.println(msg);
}
}
}
// 釋放資源
private void release() {
this.isRunning = false;
Util.close(dis, client);
}
}
(由于從JDK中復制過來的代碼格式會被平臺調整,所以這里照齊上可能不太好看 。)
然后就是發(fā)送類了,發(fā)送跟接收差不多,基本思路是一樣的
package com.TCP;
import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.Socket;
public class Send implements Runnable {
private BufferedReader console;
private DataOutputStream dos;
private Socket client;
private boolean isRunning;
// 這里用到了名字,就是知道是誰誰發(fā)的信息
public Send(Socket client, String name) {
console = new BufferedReader(new InputStreamReader(System.in));
this.client = client;
try {
dos = new DataOutputStream(client.getOutputStream());
this.isRunning = true;
send(name);
} catch (IOException e) {
release();
}
}
// 這里是重寫了run方法
@Override
public void run() {
while (isRunning) {
String msg = getStrFromConsole();
if (!msg.equals(“”)) {
send(msg);
}
}
}
// 這里是發(fā)送消息
private void send(String msg) {
try {
dos.writeUTF(msg);
dos.flush();
} catch (IOException e) {
release();
}
}
// 這里是獲取控制臺輸入的信息
private String getStrFromConsole() {
String msg = “”;
try {
msg = console.readLine();
} catch (IOException e) {
release();
}
return msg;
}
// 釋放資源
private void release() {
this.isRunning = false;
Util.close(dos, client);
}
}
由于從JDK中復制過來的代碼格式會被平臺調整,所以這里照齊上可能不太好看 。
Util工具類這個就是Util類了,這個類就是實現(xiàn)了釋放資源 。
package com.TCP;
import java.io.Closeable;
/**
* 工具類
*
* @author 11852
*
*/
public class Util {
// 釋放資源
public static void close(Closeable… targets) {
for (Closeable target : targets) {
try {
if (target != null) {
target.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
}


以上關于本文的內容,僅作參考!溫馨提示:如遇健康、疾病相關的問題,請您及時就醫(yī)或請專業(yè)人士給予相關指導!

「愛刨根生活網(wǎng)」www.malaban59.cn小編還為您精選了以下內容,希望對您有所幫助: