首页 > 程序开发 > 软件开发 > Java >

Java网络编程从入门到精通(28):获取ServerSocket信息的方法及FTP原理

2011-03-01

与ServerSocket对象相关的信息有两个:绑定端口和绑定IP地址。绑定端口可以通过getLocalPort方法获得。绑定IP地址可以通过getInetAddress方法获得。 一、getLocalPort方法 getLocalPort方法的返回值可分为以下三种情况: 1. &nbs

ServerSocket对象相关的信息有两个:绑定端口和绑定IP地址。绑定端口可以通过getLocalPort方法获得。绑定IP地址可以通过getInetAddress方法获得。

一、getLocalPort方法

getLocalPort方法的返回值可分为以下三种情况:

1. ServerSocket对象未绑定端口,getLocalPort方法的返回值为-1

2. ServerSocket对象绑定了一个固定的端口,getLocalPort方法返回这个固定端口。

3. ServerSocket对象的绑定端口为0getLocalPort方法返回一个随机的端口(这类端口被称为匿名端口)。

getLocalPort方法的定义如下:

public int getLocalPort()

getLocalPort方法主要是为这些匿名端口而准备的。下面的代码演示了ServerSocket对象产生随机端口的过程:

package server;

import java.net.*;

public class RandomPort
{
public static void main(String[] args) throws Exception
{
for (int i = 1; i <= 5; i++)
{
System.out.print(
"Random Port" + i + "");
System.out.println(
new ServerSocket(0).getLocalPort());
}
}
}

运行结果:

Random Port1:1397
Random Port2:
1398
Random Port3:
1399
Random Port4:
1400
Random Port5:
1401

在大多数时候ServerSocket对象都会绑定一个固定的端口。但有时客户端只需要和服务端进行短暂的连接,这时就可以使用匿名端口。如我们经常用的FTP服务就是如此。

相关文章
热点推荐