So a very simple Server code:
while(true) { Socket sock = serverSock.accept(); PrintWriter writer = new PrintWriter(sock.getOutputStream()); String advice = "advice here"; writer.println(advice); writer.close(); } And a simple Client that will read data from this Socket:
Socket s = new Socket(“127.0.0.1”, 4242); InputStreamReader streamReader = new InputStreamReader(s.getInputStream()); BufferedReader reader = new BufferedReader(streamReader); String advice = reader.readLine(); What I am trying is very high-level actually and quite simple. How does sock.getOutputStream is connected to s.getInputStream()?
How can the data that is sent over clients outputstream can be read from servers inputstream? I can not make the connection in my head and I can not visualize it.
My question is how the inputstream and outputstream object are connected? How can writer.println(advice); end up in reader.readLine()? How is the OutputStream connected to InputStream?
Any help is greatly appreciated.