InetAddress 类实现了 Serializable 接口 子类有 Inet4Address, Inet6Address
该类没有构造方法 API文档中提供了四种静态方法 可直接调用
getAllByName(String host)
在给定主机名的情况下,根据系统上配置的名称服务返回其 IP 地址所组成的数组。
getByAddress(byte[] addr)
在给定原始 IP 地址的情况下,返回 InetAddress
对象。
getByAddress(String host,byte[] addr)
根据提供的主机名和 IP 地址创建 InetAddress。getByName(String host)
返回本地主机。
下面是个例子:
package com.chen.study.test; import java.lang.reflect.Array; import java.net.InetAddress; import java.net.UnknownHostException; import java.util.Arrays; public class InetAddressTest { /** * 使用InetAddress类 实现基础方法 * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub try { InetAddress address = InetAddress.getLocalHost(); System.out.println("主机ip地址:"+address.getHostAddress()); System.out.println("主机名称:"+address.getHostName()); byte[] bytes = address.getAddress(); System.out.println("字节数组型的IP地址"+Arrays.toString(bytes)); InetAddress address2 =address.getByName("WIN-R5PAKVOQ0S5"); System.out.println("主机ip地址:"+address2.getHostAddress()); System.out.println("主机名称:"+address2.getHostName()); } catch (UnknownHostException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }