Я пытаюсь создать сервер в Java, который будет поддерживать до 4 подключений одновременно. Я думал, что хранение соответствующей информации в массиве послужит моей цели, но у меня возникли некоторые проблемы.
Вот класс, который я создал:
import java.net.*;
import java.io.*;
public class tcpConnects{
private ObjectInputStream input;
private ObjectOutputStream output;
private int player;
public tcpConnects(int playerNumber, Socket connect) {
// TODO Auto-generated method stub
try{
System.out.println("create InputStream");
input= new ObjectInputStream(connect.getInputStream());
System.out.println("create OutputStream");
output= new ObjectOutputStream(connect.getOutputStream());
System.out.println("streams created");
//sendData("Welcome!");
player=playerNumber;
}catch (IOException ioException){
ioException.printStackTrace();
}
}
public ObjectInputStream getInput(){
return input;
}
public void setInput(ObjectInputStream in){
input=in;
}
public ObjectOutputStream getOutput(){
return output;
}
public void setOutput(ObjectOutputStream out){
output=out;
}
public int getPlayer(){
return player;
}
public void sendData(String data){
try{
output.writeObject(data);
output.flush();
}catch (IOException ioException){
ioException.printStackTrace();
}
}
}
В любом случае, когда я отправляю сокет в класс, он достигает стадии создания входного потока, но тогда поток фактически не создается. Синтаксис кажется правильным, поэтому я могу только предположить, что существует какая-то логическая ошибка, о которой я не знаю. Будем весьма благодарны за любую помощь в расшифровке, почему этот класс не будет создавать поток ввода или вывода.
Спасибо