Я получаю исключение NullPointerException при запуске моего кода. Я сузил проблему до строки 38: когда она закомментирована, программа не дает никаких ошибок. Сейчас у меня есть «тест».java.lang.NullPointerException PrintWriter
out.println("test")
Метод запуска сразу же начинается с двух следующих строк в другом классе
Client test = new Client();
test.start();
И когда кнопка нажата выполняется следующий код, который запускает метод sendToServer
Client test = new Client();
test.sendToServer(cipherText)
Ниже приведен полный код для моего класса Client.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.Socket;
public class Client extends Thread{
String line = "";
String cipherText = "";
BufferedReader in;
PrintWriter out;
public void run(){
String serverAddress = "00.000.000.000";
try{
Socket socket = new Socket(serverAddress, 8888);
in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
out = new PrintWriter(socket.getOutputStream(), true);
}
catch(IOException e){
e.printStackTrace();
}
while (true) {
try{
line = in.readLine();
}
catch(IOException e){
e.printStackTrace();
}
System.out.println(line);
}
}
public void sendToServer(String in) {
out.println("test");
}
}
Спасибо за то, что я все еще изучаю Java, поэтому оправдываю любые очевидные ошибки.
Вам необходимо установить соединение с сервером - сокет должен быть хорошо установлен - прежде чем вы сможете читать и записывать потоки, связанные с сокетом. – laune