服务端代码:
ServerSocket serverSocket = new ServerSocket(8888);
Socket socket = serverSocket.accept();
System.out.println(socket.getRemoteSocketAddress());客户端代码:
socket = new Socket("192.168.1.100",8888);
System.out.println(socket.getLocalSocketAddress());
服务端输出:/127.0.0.1:5702
客户端输出:/127.0.0.1:5701
问题:为什么一个端口号是5702,一个端口号是5701,怎么不相等啊???
并且,每次测试的结果都是这两个端口号相差1,为什么???应该相等才对啊!!我的环境:操作系统Windows 7, JDK 1.6。
ServerSocket serverSocket = new ServerSocket(8888);
Socket socket = serverSocket.accept();
System.out.println(socket.getRemoteSocketAddress());客户端代码:
socket = new Socket("192.168.1.100",8888);
System.out.println(socket.getLocalSocketAddress());
服务端输出:/127.0.0.1:5702
客户端输出:/127.0.0.1:5701
问题:为什么一个端口号是5702,一个端口号是5701,怎么不相等啊???
并且,每次测试的结果都是这两个端口号相差1,为什么???应该相等才对啊!!我的环境:操作系统Windows 7, JDK 1.6。
解决方案 »
- JAVA关于同步的问题
- 关于事件监听的问题
- 一个高中肄业生,没有任何基础,一个月的时间学完《Java ?How To Program》上册可以么?不上机,就是光看书的方式
- java里怎么进程间怎么通信的?
- Main class and arguments must be specified怎么解??
- 请问哪里有JDK1.4.2的目录结构的相关资料,还有如果想将JDK做裁剪的话,最小能裁到多少M?
- JBUILDER的几个问题 100分 在线等待
- 呵呵,不好意思,刚才刚问完一个问题,现在又有一个问题!还是高分!在线等待
- java编程思想电子版到哪下载?
- 小弟,选择单位面临两难,朋友们指点指点呀
- 关于继承的变量赋值、覆盖,构造函数的问题,坐等解答
- 构造方法、空指针异常?
我是说服务端的getRomteAddress和客户端的getLocalAddress指的都是一个地址,应该相同,但实际结果却不同。我又做了几个试验,发现这段程序在WinXP上运行得到的结果是两地址相同,而在win7上运行却得到两地址不相等的结果。
这个意思是不是说,服务端收到的进程和客户端实际的进程并不是同一个?这是WIN7的某种机制么?
怀疑WIN7是不是搞了什么安全机制,做了个代理什么的……