InetAddress类的使用

此类表示互联网协议 (IP) 地址。
直接子类有:Inet4Address, Inet6Address
IP 地址是 IP 使用的 32 位或 128 位无符号数字,它是一种低级协议,UDP 和 TCP 协议都是在它的基础上构建的。
InetAddress 的实例包含 IP 地址,还可能包含相应的主机名(取决于它是否用主机名构造或者是否已执行反向主机名解析)。

方法摘要

类型方法描述
StringgetHostName()获取此 IP 地址的主机名。
byte[]getAddress()返回此 InetAddress 对象的原始 IP 地址。
static InetAddress[]getAllByName(String host)在给定主机名的情况下,根据系统上配置的名称服务返回其 IP 地址所组成的数组。
static InetAddressgetByAddress(byte[] addr)在给定原始 IP 地址的情况下,返回 InetAddress 对象。
static InetAddressgetByAddress(String host, byte[] addr)根据提供的主机名和 IP 地址创建 InetAddress。
static InetAddressgetByName(String host)在给定主机名的情况下确定主机的 IP 地址。
StringgetCanonicalHostName()获取此 IP 地址的完全限定域名。
StringgetHostAddress()返回 IP 地址字符串(以文本表现形式)。
static InetAddressgetLocalHost()返回本地主机。
inthashCode()返回此 IP 地址的哈希码。
booleanisAnyLocalAddress()检查 InetAddress 是否是通配符地址的实用例行程序。
booleanisLinkLocalAddress()检查 InetAddress 是否是链接本地地址的实用例行程序。
booleanisLoopbackAddress()检查 InetAddress 是否是回送地址的实用例行程序。
booleanisMCGlobal()检查多播地址是否具有全局域的实用例行程序。
booleanisMCLinkLocal()检查多播地址是否具有链接范围的实用例行程序。
booleanisMCNodeLocal()检查多播地址是否具有节点范围的实用例行程序。
booleanisMCOrgLocal()检查多播地址是否具有组织范围的实用例行程序。
booleanisMCSiteLocal()检查多播地址是否具有站点范围的实用例行程序。
booleanisMulticastAddress()检查 InetAddress 是否是 IP 多播地址的实用例行程序。
booleanisReachable(int timeout)测试是否可以达到该地址。
booleanisReachable(NetworkInterface netif, int ttl, int timeout)测试是否可以达到该地址。
booleanisSiteLocalAddress()检查 InetAddress 是否是站点本地地址的实用例行程序。

使用说明

byte[] 存储IP地址

使用byte[] adds对IP进行存储的时候,如果值大于127,需要进行类型转换,如:byte[] adds={(byte)192,(byte)168.0.2}

两种获取主机名的区别

getCanonicalHostName得到的是主机名,而getHostName得到的主机别名.

isLinkLocalAddress()方法

当IP地址是通配符地址时返回true,否则返回false.这个通配符地址对于拥有多个网络接口(如两块网卡)的计算机非常拥有。使用通配符地址可以允许在服务器主机接受来自任何网络接口的客户端连接。IPv4的通配符地址是0.0.0.0.IPv6的通配符地址是0:0:0:0:0:0:0:0,也可以简写成::。

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值