本文为原创,如需转载,请注明作者和出处,谢谢!
上一篇:Java网络编程从入门到精通(27):关闭服务端连接
与ServerSocket对象相关的信息有两个:绑定端口和绑定IP地址。绑定端口可以通过getLocalPort方法获得。绑定IP地址可以通过getInetAddress方法获得。
一、getLocalPort方法
getLocalPort方法的返回值可分为以下三种情况:
1. ServerSocket对象未绑定端口,getLocalPort方法的返回值为-1。
2. ServerSocket对象绑定了一个固定的端口,getLocalPort方法返回这个固定端口。
3. ServerSocket对象的绑定端口为0,getLocalPort方法返回一个随机的端口(这类端口被称为匿名端口)。
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());
}
}
}
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());
}
}
}
运行结果: