Java网络应用程序中,使用java.net包中的InetAddress类表示IP地址,这个类被大多数的网络类所引用,可同时支持IPV4和IPV6。该类用两个字段表示一个IP地址,hostName和address,hostName包含了主机名,address包含了32位的IP地址。
InetAddress类中没有公共的构造方法,InetAddress提供了静态方法来返回合适的初始化的InetAddress对象。
1、public static InetAddress getByName(String host) throws UnknownHostException
在给定主机名的情况下确定主机的IP地址,主机名可以是机器名(“如java.sun.com")也可以是其IP地址的文本表示形式,如果提供IP地址,则仅检查地址格式的有效性,如果主机为null,则返回表示回送接口地址的InetAddress。
例如:InetAddress address = InetAddress.getByName("https://www.oracle.com/");
2、public static InetAddress[] getAllByName(String host) throws UnknownHostException
在给定主机名的情况下,根据系统上配置的名称服务返回其IP地址所组成的数组。
3、public static InetAddress getByAddress(byte[] addr)throws UnknownHostException
在给定原始IP地址的情况下,返回InetAddress对象,参数按网络字节顺序,地址的高位字节位于getAddress()[0]中。