Java 客户端-服务器流初始化

Java client-server stream initialization

我真的不明白为什么必须在客户端中初始化 objectInputStream 之前初始化 objectOutputStream class。

如果我不这样做:

ObjectOutputStream clientOutputStream = new ObjectOutputStream(socketConnection.getOutputStream()); ObjectInputStream clientInputStream = new ObjectInputStream(socketConnection.getInputStream());

我会运行进入循环

有谁能给我解释一下吗?

你不会运行进入循环。你会 运行 陷入僵局。

构造一个 ObjectInputStream 读取一个流头,它通过在对等点构造一个 ObjectOutputStream 来放置在那里。所以如果你在两端先构造ObjectInputStream,两边都在等待对方。如果您总是先构造 ObjectOutputStream,那么对等方做什么并不重要。