- java.lang.Object
-
- java.net.InetAddress
-
- java.net.Inet4Address
-
- 实现的所有接口
-
Serializable
public final class Inet4Addressextends InetAddress
此类表示Internet协议版本4(IPv4)地址。 通过定义RFC 790: Assigned Numbers , RFC 1918: Address Allocation for Private Internets和RFC 2365: Administratively Scoped IP MulticastTextual representation of IP addresses
用作方法输入的IPv4地址的文本表示采用以下形式之一:d.d.d.d
d.d.d
d.d
d
指定四个部分时,每个部分都被解释为一个数据字节,并从左到右分配给IPv4地址的四个字节。
当指定三部分地址时,最后一部分被解释为16位数量并放在网络地址的最右边两个字节中。 这使得三部分地址格式便于将B类网络地址指定为128.net.host。
当提供两部分地址时,最后一部分被解释为24位数量并放在网络地址的最右边三个字节中。 这使得两部分地址格式便于将A类网络地址指定为net.host。
当只给出一个部分时,该值直接存储在网络地址中,而不进行任何字节重新排列。
对于返回文本表示作为输出值的方法,使用第一种形式,即点分四字符串。
多播地址的范围
历史上,IP报头中的IPv4 TTL字段已加倍作为多播范围字段:TTL为0表示节点本地,1表示链路本地,向上32表示站点本地,向上64表示区域本地,向上通过128表示大陆本地,最多255表示全球。 但是,行政范围是首选。 请参考RFC 2365: Administratively Scoped IP Multicast- 从以下版本开始:
- 1.4
- 另请参见:
- Serialized Form
-
-
方法摘要
所有方法 实例方法 具体的方法 变量和类型 方法 描述 boolean
equals(Object obj)
将此对象与指定的对象进行比较。byte[]
getAddress()
返回此InetAddress
对象的原始IP地址。String
getHostAddress()
以文本表示形式返回IP地址字符串。int
hashCode()
返回此IP地址的哈希码。boolean
isAnyLocalAddress()
用于检查InetAddress是否为通配符地址的实用例程。boolean
isLinkLocalAddress()
用于检查InetAddress是否为链接本地地址的实用程序例程。boolean
isLoopbackAddress()
用于检查InetAddress是否为环回地址的实用例程。boolean
isMCGlobal()
用于检查多播地址是否具有全局范围的实用例程。boolean
isMCLinkLocal()
用于检查多播地址是否具有链接范围的实用例程。boolean
isMCNodeLocal()
用于检查多播地址是否具有节点范围的实用例程。boolean
isMCOrgLocal()
用于检查多播地址是否具有组织范围的实用例程。boolean
isMCSiteLocal()
用于检查多播地址是否具有站点范围的实用程序例程。boolean
isMulticastAddress()
用于检查InetAddress是否为IP多播地址的实用程序例程。boolean
isSiteLocalAddress()
用于检查InetAddress是否为站点本地地址的实用程序例程。-
声明方法的类 java.net.InetAddress
getAllByName, getByAddress, getByAddress, getByName, getCanonicalHostName, getHostName, getLocalHost, getLoopbackAddress, isReachable, isReachable, toString
-
-
-
-
方法详细信息
-
isMulticastAddress
public boolean isMulticastAddress()
用于检查InetAddress是否为IP多播地址的实用程序例程。 IP多播地址是D类地址,即地址的前四位是1110。- 重写:
-
isMulticastAddress
类InetAddress
- 结果
- a
boolean
指示InetAddress是否是IP多播地址
-
isAnyLocalAddress
public boolean isAnyLocalAddress()
用于检查InetAddress是否为通配符地址的实用例程。- 重写:
-
isAnyLocalAddress
在类InetAddress
- 结果
- a
boolean
指示Inetaddress是否为通配符地址。
-
isLoopbackAddress
public boolean isLoopbackAddress()
用于检查InetAddress是否为环回地址的实用例程。- 重写:
-
isLoopbackAddress
类InetAddress
- 结果
- a
boolean
指示InetAddress是否为环回地址; 否则为假。
-
isLinkLocalAddress
public boolean isLinkLocalAddress()
用于检查InetAddress是否为链接本地地址的实用程序例程。- 重写:
-
isLinkLocalAddress
在类InetAddress
- 结果
- a
boolean
指示InetAddress是否为链接本地地址; 如果地址不是链接本地单播地址,则返回false。
-
isSiteLocalAddress
public boolean isSiteLocalAddress()
用于检查InetAddress是否为站点本地地址的实用程序例程。- 重写:
-
isSiteLocalAddress
在类InetAddress
- 结果
- a
boolean
指示InetAddress是否是站点本地地址; 如果地址不是站点本地单播地址,则返回false。
-
isMCGlobal
public boolean isMCGlobal()
用于检查多播地址是否具有全局范围的实用例程。- 重写:
-
isMCGlobal
在类InetAddress
- 结果
- a
boolean
指示地址是否是全局范围的多播地址,如果不是全局范围或者不是多播地址,则为false
-
isMCNodeLocal
public boolean isMCNodeLocal()
用于检查多播地址是否具有节点范围的实用例程。- 重写:
-
isMCNodeLocal
在类InetAddress
- 结果
- a
boolean
指示地址是否是节点本地作用域的多播地址,如果它不是节点本地作用域,或者它不是多播地址,则为false
-
isMCLinkLocal
public boolean isMCLinkLocal()
用于检查多播地址是否具有链接范围的实用例程。- 重写:
-
isMCLinkLocal
在类InetAddress
- 结果
- a
boolean
指示地址是否是链路本地范围的多播地址,如果它不是链路本地范围或者不是多播地址,则为false
-
isMCSiteLocal
public boolean isMCSiteLocal()
用于检查多播地址是否具有站点范围的实用程序例程。- 重写:
-
isMCSiteLocal
在类InetAddress
- 结果
- a
boolean
指示地址是否是站点本地作用域的多播地址,如果不是站点本地作用域或不是多播地址,则为false
-
isMCOrgLocal
public boolean isMCOrgLocal()
用于检查多播地址是否具有组织范围的实用例程。- 重写:
-
isMCOrgLocal
在类InetAddress
- 结果
- a
boolean
指示地址是否是组织本地范围的多播地址,如果它不是组织本地范围或者不是多播地址,则为false
-
getAddress
public byte[] getAddress()
返回此InetAddress
对象的原始IP地址。 结果是网络字节顺序:地址的最高位字节在getAddress()[0]
。- 重写:
-
getAddress
在类InetAddress
- 结果
- 此对象的原始IP地址。
-
getHostAddress
public String getHostAddress()
以文本表示形式返回IP地址字符串。- 重写:
-
getHostAddress
类InetAddress
- 结果
- 字符串格式的原始IP地址。
-
hashCode
public int hashCode()
返回此IP地址的哈希码。- 重写:
-
hashCode
类InetAddress
- 结果
- 此IP地址的哈希码值。
- 另请参见:
-
Object.equals(java.lang.Object)
,System.identityHashCode(java.lang.Object)
-
equals
public boolean equals(Object obj)
将此对象与指定的对象进行比较。 当且仅当参数不是null
并且它表示与此对象相同的IP地址时,结果为true
。如果
getAddress
返回的字节数组的长度对于两者都相同,则InetAddress
两个实例表示相同的IP地址,并且每个数组组件对于字节数组是相同的。- 重写:
-
equals
类InetAddress
- 参数
-
obj
- 要比较的对象。 - 结果
-
true
如果对象相同; 否则为false
。 - 另请参见:
-
InetAddress.getAddress()
-
-