W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
java.lang.Object
|---java.net.SocketAddress
|---|---java.net.InetSocketAddress
public class InetSocketAddress
extends SocketAddress
此類實現(xiàn)了一個 IP 套接字地址(IP 地址 + 端口號),它也可以是一對(主機名 + 端口號),在這種情況下,將嘗試解析主機名。 如果解析失敗,則稱該地址未解析,但仍可在某些情況下使用,例如通過代理連接。
它提供了一個不可變的對象,供套接字用于綁定、連接或作為返回值。
通配符是一個特殊的本地 IP 地址。 它通常表示“任何”,只能用于綁定操作。
構(gòu)造函數(shù) | 描述 |
---|---|
InetSocketAddress(int port) | 創(chuàng)建一個套接字地址,其中 IP 地址是通配符地址,端口號是指定值。 |
InetSocketAddress(String hostname, int port) | 從主機名和端口號創(chuàng)建套接字地址。 |
InetSocketAddress(InetAddress addr, int port) | 從 IP 地址和端口號創(chuàng)建套接字地址。 |
修飾符和類型 | 方法 | 描述 |
---|---|---|
static InetSocketAddress | createUnresolved(String host, int port) | 從主機名和端口號創(chuàng)建一個未解析的套接字地址。 |
boolean | equals(Object obj) | 將此對象與指定對象進行比較。 |
InetAddress | getAddress() | 獲取 InetAddress。 |
String | getHostName() | 獲取主機名。 |
String | getHostString() | 如果沒有主機名(它是使用文字創(chuàng)建的),則返回主機名或地址的字符串形式。 |
int | getPort() | 獲取端口號。 |
int | hashCode() | 返回此套接字地址的哈希碼。 |
boolean | isUnresolved() | 檢查地址是否已解析。 |
String | toString() | 構(gòu)造此 InetSocketAddress 的字符串表示形式。 |
從類 java.lang.Object 繼承的方法 |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
public InetSocketAddress(int port)
創(chuàng)建一個套接字地址,其中 IP 地址是通配符地址,端口號是指定值。
有效端口值介于 0 和 65535 之間。端口號為零將使系統(tǒng)在綁定操作中選擇一個臨時端口。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
port | 端口號 |
Throws:
Throw名稱 | Throw描述 |
---|---|
IllegalArgumentException | 如果端口參數(shù)超出指定的有效端口值范圍。 |
public InetSocketAddress(InetAddress addr, int port)
從 IP 地址和端口號創(chuàng)建套接字地址。
有效端口值介于 0 和 65535 之間。端口號為零將使系統(tǒng)在綁定操作中選擇一個臨時端口。
空地址將分配通配符地址。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
addr | IP 地址 |
port | 端口號 |
Throws:
Throw名稱 | Throw描述 |
---|---|
IllegalArgumentException | 如果端口參數(shù)超出指定的有效端口值范圍。 |
public InetSocketAddress(String hostname, int port)
從主機名和端口號創(chuàng)建套接字地址。
將嘗試將主機名解析為 InetAddress。 如果該嘗試失敗,該地址將被標記為未解析。
如果有安全管理器,則調(diào)用其 checkConnect 方法,并以主機名作為其參數(shù),以檢查解決它的權(quán)限。 這可能會導致 SecurityException。
有效端口值介于 0 和 65535 之間。端口號為零將使系統(tǒng)在綁定操作中選擇一個臨時端口。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
hostname | 主機名 |
port | 端口號 |
Throws:
Throw名稱 | Throw描述 |
---|---|
IllegalArgumentException | 如果端口參數(shù)超出有效端口值的范圍,或者主機名參數(shù)為空。 |
SecurityException | 如果存在安全管理器并且拒絕解析主機名的權(quán)限。 |
public static InetSocketAddress createUnresolved(String host, int port)
從主機名和端口號創(chuàng)建一個未解析的套接字地址。
不會嘗試將主機名解析為 InetAddress。 該地址將被標記為未解析。
有效端口值介于 0 和 65535 之間。端口號為零將使系統(tǒng)在綁定操作中選擇一個臨時端口。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
host | 主機名 |
port | 端口號 |
返回:
表示未解析的套接字地址的 InetSocketAddress
Throws:
Throw名稱 | Throw描述 |
---|---|
IllegalArgumentException | 如果端口參數(shù)超出有效端口值的范圍,或者主機名參數(shù)為空。 |
public final int getPort()
獲取端口號。
返回:
端口號。
public final InetAddress getAddress()
獲取 InetAddress。
返回:
InetAdress 或 null 如果它未解析。
public final String getHostName()
獲取主機名。 注意:如果地址是使用文字 IP 地址創(chuàng)建的,則此方法可能會觸發(fā)名稱服務(wù)反向查找。
返回:
地址的主機名部分。
public final String getHostString()
如果沒有主機名(它是使用文字創(chuàng)建的),則返回主機名或地址的字符串形式。 這樣做的好處是不嘗試反向查找。
返回:
地址的主機名或字符串表示形式。
public final boolean isUnresolved()
檢查地址是否已解析。
返回:
如果無法將主機名解析為 InetAddress,則為 true。
public String toString()
構(gòu)造此 InetSocketAddress 的字符串表示形式。 此字符串是通過在 InetAddress 上調(diào)用 toString() 并連接端口號(使用冒號)來構(gòu)造的。 如果地址未解析,則冒號之前的部分將僅包含主機名。
覆蓋:
類 Object 中的 toString
返回:
此對象的字符串表示形式。
public final boolean equals(Object obj)
將此對象與指定對象進行比較。 當且僅當參數(shù)不為空并且它表示與此對象相同的地址時,結(jié)果才為真。
如果 InetAddresses(或主機名,如果它未解析)和端口號相等,則 InetSocketAddress 的兩個實例表示相同的地址。 如果兩個地址都未解析,則比較主機名和端口號。 注意:主機名不區(qū)分大小寫。 例如 "FooBar" 和 "foobar" 被認為是相等的。
覆蓋:
類 Object 中的等于
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
obj | 要比較的對象。 |
返回:
如果對象相同,則為 true; 否則為false。
public final int hashCode()
返回此套接字地址的哈希碼。
覆蓋:
類 Object 中的 hashCode
返回:
此套接字地址的哈希碼值。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: