JAVA Socket客户端疑问
刚入手Socket,有个问题请教下:是否客户端每发送一次消息,都要new一个Socket对象出来?详细描述如下:
通常客户端都是这么写的:
//创建socket
Socket socket = new Socket(ip,port)
//获取流来写数据
socket.getOutputStream()
一个客户端有"连接"按钮,有"发送"按钮。
我理解我只需要的"连接"按钮里面调用【创建socket】的代码来连接服务端,然后将socket对象保存起来
然后在"发送"按钮里面,取出socket对象,并调用【获取流来写数据】的代码来与服务端通信。
而实际上如果按上述方式来进行的话,服务端只能接受一次客户端的"发送"按钮所发送的消息。(服务端已经while(true)监了)
如果我将上述代码,即【创建socket】和【获取流来写数据】都放到"发送"按钮里面,服务器端是可以多次接收客户端的消息的
也就是说,客户端每发送一次消息,都要new Socket对象出来才行。是我理解的不对,还是确实就是这样?