|
|||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
java.net
类 InetSocketAddress
java.lang.Object java.net.SocketAddress java.net.InetSocketAddress
- 所有已实现的接口:
- Serializable
-
public class InetSocketAddress
- extends SocketAddress
此类实现 IP 套接字地址(IP 地址 + 端口号)。它还可以是一个对(主机名 + 端口号),在此情况下,将尝试解析主机名。如果解析失败,则该地址将被视为未解析 地址,但是其在某些情形下仍然可以使用,比如通过代理连接。
它提供不可变对象,供套接字用于绑定、连接或用作返回值。
通配符 是一个特殊的本地 IP 地址。它通常表示“任何”,只能用于 bind
操作。
- 从以下版本开始:
- 1.4
- 另请参见:
-
Socket
,ServerSocket
, 序列化表格
构造方法摘要 | |
---|---|
InetSocketAddress(InetAddress addr, int port) 根据 IP 地址和端口号创建套接字地址。 |
|
InetSocketAddress(int port) 创建套接字地址,其中 IP 地址为通配符地址,端口号为指定值。 |
|
InetSocketAddress(String hostname, int port) 根据主机名和端口号创建套接字地址。 |
方法摘要 | |
---|---|
static InetSocketAddress |
createUnresolved(String host, int port) 根据主机名和端口号创建未解析的套接字地址。 |
boolean |
equals(Object obj) 将此对象与指定对象比较。 |
InetAddress |
getAddress() 获取 InetAddress 。 |
String |
getHostName() 获取 hostname 。 |
int |
getPort() 获取端口号。 |
int |
hashCode() 返回此套接字地址的哈希码。 |
boolean |
isUnresolved() 检查是否已解析地址。 |
String |
toString() 构造此 InetSocketAddress 的字符串表示形式。 |
从类 java.lang.Object 继承的方法 |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
构造方法详细信息 |
---|
InetSocketAddress
public InetSocketAddress(int port)
-
创建套接字地址,其中 IP 地址为通配符地址,端口号为指定值。
有效端口值介于 0 和 65535 之间。端口号
zero
允许系统在bind
操作中挑选暂时的端口。- 参数:
-
port
- 端口号 - 抛出:
-
IllegalArgumentException
- 如果 port 参数超出有效端口值的指定范围。
InetSocketAddress
public InetSocketAddress(InetAddress addr, int port)
-
根据 IP 地址和端口号创建套接字地址。
有效端口值介于 0 和 65535 之间。端口号
zero
允许系统在bind
操作中挑选暂时的端口。null
地址将分配通配符 地址。- 参数:
-
addr
- IP 地址 -
port
- 端口号 - 抛出:
-
IllegalArgumentException
- 如果 port 参数超出有效端口值的指定范围。
InetSocketAddress
public InetSocketAddress(String hostname, int port)
-
根据主机名和端口号创建套接字地址。
尝试将主机名解析为 InetAddress。如果尝试失败,则将地址标记为未解析。
如果存在安全管理器,则将主机名用作参数调用其
checkConnect
方法,以检查解析它的权限。这可能会导致 SecurityException 异常。有效端口值介于 0 和 65535 之间。端口号
zero
允许系统在bind
操作中挑选暂时的端口。- 参数:
-
hostname
- 主机名 -
port
- 端口号 - 抛出:
-
IllegalArgumentException
- 如果 port 参数超出有效端口值的范围,或者主机名参数为 null。 -
SecurityException
- 如果存在安全管理器,但拒绝解析主机名的权限。 - 另请参见:
-
isUnresolved()
方法详细信息 |
---|
createUnresolved
public static InetSocketAddress createUnresolved(String host, int port)
-
根据主机名和端口号创建未解析的套接字地址。
不会尝试将主机名解析为 InetAddress。将地址标记为未解析。
有效端口值介于 0 和 65535 之间。端口号
zero
允许系统在bind
操作中挑选暂时的端口。 -
- 参数:
-
host
- 主机名 -
port
- 端口号 - 返回:
-
表示未解析套接字地址的
InetSocketAddress
- 抛出:
-
IllegalArgumentException
- 如果 port 参数超出有效端口值的范围,或者主机名参数为 null。 - 从以下版本开始:
- 1.5
- 另请参见:
-
isUnresolved()
getPort
public final int getPort()
- 获取端口号。
-
- 返回:
- 端口号。
getAddress
public final InetAddress getAddress()
-
获取
InetAddress
。 -
- 返回:
-
InetAdress;如果未解析,则返回
null
。
getHostName
public final String getHostName()
-
获取
hostname
。 -
- 返回:
- 地址的主机名部分。
isUnresolved
public final boolean isUnresolved()
- 检查是否已解析地址。
-
- 返回:
-
如果无法将主机名解析为
InetAddress
,则返回true
。