最近在学网络编程,看到一句话很不解,客户端的端口号不需要指定,系统会自动给当前这个应用程序分配一个空闲的端口号,但是服务器端的端口号必须指定,用于接收来自客户端的信息。
其实是自己基础不扎实把,服务器端的端口号是通过ServerSocket类的构造函数的参数指定的,定义:
ServerSocket(int port)
创建绑定到指定端口的服务器套接字。
而Socket类的构造函数中的port参数并不是指定当前客户端监听port这个端口,而是指定的是消息要发到服务器中服务器对应的端口号。一般情况下,不需要指定客户端的端口号。