對於我正在創建一個簡單的客戶端/服務器的類。客戶端打開一個jframe,用戶輸入主機和端口號。如果建立連接,則打開另一個具有keylistener的jframe。服務器的jtextarea中顯示客戶端輸入的內容。我能夠在客戶端和服務器之間建立連接,但在此之後,我立即遇到空指針異常。我想我應該在我的服務器中使用比bufferedreader更多的東西,或者如果我可以阻止服務器讀取內容,直到實際輸入內容爲止?還是我在做其他事情完全錯誤?任何幫助將不勝感激,相關的代碼如下。BufferedReader,客戶端/服務器
public class TypeServer extends JPanel {
BufferedReader lnr;
public TypeServer(Socket soc) throws IOException {
InputStream inStream = soc.getInputStream();
InputStreamReader isr = new InputStreamReader(inStream);
BufferedReader lnr = new BufferedReader(isr);
}
//below is in the main function
try {
ServerSocket srv = new ServerSocket(5555);
Socket soc=srv.accept();
while (true) {
// Create server
TypeServer tc = new TypeServer(soc);
String line=tc.lnr.readLine();
textArea.append(line);
srv.close();
soc.close();
}
}
編輯:我對之前不包括此道歉,但 字符串行= tc.lnr.readLine(); 線打空指針異常
哪條線打下面的您正在使用的實例變量
空指針異常? –