Вы можете , но вы должны позаботиться о буферизации.PrintWriter
или ObjectOutputStream
принимает данные, которые он преобразует в байты, для отправки в базовый поток (здесь сокет) в некоторый момент .Буферизация заключается в том, чтобы немного подождать, прежде чем записывать такие байты, чтобы байты можно было отправлять «большими порциями», а не по отдельности.
Прочтите Javadoc о буферизации и используйте flush()
на PrintWriter
иObjectOutputStream
когда вы хотите убедиться, что байты записаны в сокет.