InetAddress类:
Java一切皆对象:这个类是对IP地址的封装
java.net.InetAddress类是java的IP地址封装类,内部隐藏了IP地址,可以通过它很容易的使用主机名以及IP地址。一般供各种网络类使用。直接由Object类派生并实现了序列化接口。该类用两个字段表示一个地址:hostName与address。hostName包含主机名,address包含IP地址。InetAddress支持ipv4与ipv6地址。
一些常用方法如下:
1. static InetAddress getLocalHost():返回本地计算机的InetAddress。
2. String getHostName():返回指定InetAddress对象的主机名。
3. String getHostAddress():返回指定InetAddress对象的主机地址的字符串形式
4. static InetAddress getByName(String hostname):使用DNS查找指定主机名或域名为hostname的IP地址,并返回InetAddress。
应用举例:
以上代码将打印网址域名为java.sun.com的对应主机和IP地址信息。因此,在网络编程中,我们可以很方便的使用InetAddress类实现Ip地址的各种操作。
示例如下:
Java一切皆对象:这个类是对IP地址的封装
java.net.InetAddress类是java的IP地址封装类,内部隐藏了IP地址,可以通过它很容易的使用主机名以及IP地址。一般供各种网络类使用。直接由Object类派生并实现了序列化接口。该类用两个字段表示一个地址:hostName与address。hostName包含主机名,address包含IP地址。InetAddress支持ipv4与ipv6地址。
一些常用方法如下:
1. static InetAddress getLocalHost():返回本地计算机的InetAddress。
2. String getHostName():返回指定InetAddress对象的主机名。
3. String getHostAddress():返回指定InetAddress对象的主机地址的字符串形式
4. static InetAddress getByName(String hostname):使用DNS查找指定主机名或域名为hostname的IP地址,并返回InetAddress。
应用举例:
InetAddress addr = InetAddress.getByName("java.sun.com")
System.out.println(addr);
以上代码将打印网址域名为java.sun.com的对应主机和IP地址信息。因此,在网络编程中,我们可以很方便的使用InetAddress类实现Ip地址的各种操作。
示例如下:
public static void main(String[] args) throws Exception{
// 获得本地主机的相关信息
InetAddress ia = InetAddress.getLocalHost();
// 获取本地ip地址
System.out.println(ia.getHostAddress());
// 获取本地主机名
System.out.println(ia.getHostName());
// 获取主机名为UERA的ip地址
System.out.println(InetAddress.getByName("UERA").getHostAddress());
// 获得指定域名的主机信息
System.out.println(InetAddress.getByName("java.sun.com"));
// 获得本地PC机名为PC-20131114BGRJ的所有ip地址
InetAddress[] ias = InetAddress.getAllByName("PC-20131114BGRJ");
for(InetAddress i : ias){
System.out.println(i.getHostAddress());
}
}