模块  java.base
软件包  java.net

Class Inet4Address

  • 实现的所有接口
    Serializable

    public final class Inet4Addressextends InetAddress
    此类表示Internet协议版本4(IPv4)地址。 通过定义RFC 790: Assigned NumbersRFC 1918: Address Allocation for Private InternetsRFC 2365: Administratively Scoped IP Multicast

    Textual 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
    • 方法详细信息

      • isMulticastAddress

        public boolean isMulticastAddress()
        用于检查InetAddress是否为IP多播地址的实用程序例程。 IP多播地址是D类地址,即地址的前四位是1110。
        重写:
        isMulticastAddressInetAddress
        结果
        a boolean指示InetAddress是否是IP多播地址
      • isAnyLocalAddress

        public boolean isAnyLocalAddress()
        用于检查InetAddress是否为通配符地址的实用例程。
        重写:
        isAnyLocalAddress在类 InetAddress
        结果
        a boolean指示Inetaddress是否为通配符地址。
      • isLoopbackAddress

        public boolean isLoopbackAddress()
        用于检查InetAddress是否为环回地址的实用例程。
        重写:
        isLoopbackAddressInetAddress
        结果
        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地址字符串。
        重写:
        getHostAddressInetAddress
        结果
        字符串格式的原始IP地址。
      • equals

        public boolean equals​(Object obj)
        将此对象与指定的对象进行比较。 当且仅当参数不是null并且它表示与此对象相同的IP地址时,结果为true

        如果getAddress返回的字节数组的长度对于两者都相同,则InetAddress两个实例表示相同的IP地址,并且每个数组组件对于字节数组是相同的。

        重写:
        equalsInetAddress
        参数
        obj - 要比较的对象。
        结果
        true如果对象相同; 否则为false
        另请参见:
        InetAddress.getAddress()