我創建一個線程(服務器)從輸入(System.in)中讀取字符串並向客戶端發送輸出,並且當我嘗試關閉流時 我收到此錯誤:當我調用此方法時無法訪問的代碼此功能closeStream()是代碼,請幫助:Java無法訪問的代碼
import java.io.*;
public class ThreadWrite extends Thread{
private PrintWriter output;
private BufferedReader inputServer;
private final boolean test=true;
public ThreadWrite(PrintWriter out) {
output = out;
inputServer = new BufferedReader(new InputStreamReader(System.in));
}
public void run(){
String send;
while(test){
System.out.print("Server:");
try {
send = inputServer.readLine();
output.println(send);
} catch (IOException e) {
e.printStackTrace();
}
}
closeStream();
}
public void closeStream() throws Exception{
inputServer.close();
output.close();
}
}
需要你的幫助
因爲您創建了無限循環。變量測試被分配爲true,並且在代碼中它無處變爲false(因爲您聲明它爲final,不能在btw中更改)。所以while循環之後的行將永遠不會執行。 – Sajmon