Я создаю программу для обмена сообщениями, где клиенты общаются с сервером и т. Д. Проблема, на которую я наткнулся, заключается в попытке создать ObjectInputStream и ObjectOutputStream. Вот метод, который экземпляр объекта потоки:Java ObjectInputStream не создается экземпляр
private void initializeStreams() {
try {
input = new ObjectInputStream(socket.getInputStream());
if (input != null) {
System.out.println("ObjectInputStream successfully initiated");
} else {
System.out.println("ObjectInputStream is null but did not return an exception when being instantiated");
}
} catch (IOException ioe) {
System.out.println("Could not initialize ObjectInputStream: " + ioe.getMessage());
}
try {
output = new ObjectOutputStream(socket.getOutputStream());
if (output != null) {
System.out.println("ObjectOutputStream successfully initiated");
} else {
System.out.println("ObjectOutputStream is null but did not return an exception when being instantiated");
}
} catch (IOException ioe) {
System.out.println("Could not initialize ObjectOutputStream: " + ioe.getMessage());
}
}`
Проблема в этом методе является то, что ни один из System.out.println() методы не вызывался, хотя, по крайней мере, насколько мне известно, один для каждый из потоков должен быть вызван. Например, при создании объекта ObjectInputStream он должен либо выбросить исключение (что, по-видимому, не потому, что вызов System.out.println() не вызван), возвращая значение null (что также не похоже на то, что система .out.println() не получает вызов) или успешно создает объект ObjectInputStream, чего нет, потому что вызов System.out.println() не вызван. Почему это не срабатывает ни в одной из этих ситуаций? Я пропустил еще одну ситуацию, которая может возникнуть?
P.S. Да, метод initializeStreams() вызывается из программы, я просто проверил его, поместив System.out.println() в первую строку метода.
Спасибо
Добавить точки останова и отладки. – Mena
Попробуйте отладить код, посмотрите, что произойдет, когда вы пройдете через этот метод по одной строке за раз. –
Спасибо за ваше время, мне удалось исправить проблему – andyfed