当前位置: 代码迷 >> 综合 >> (网络编程)InetAddress
  详细解决方案

(网络编程)InetAddress

热度:57   发布时间:2024-01-10 04:48:55.0

 

/*网络程序包---java.net
类 InteAddrss 描述IP地址该类没有构造函数,有静态方法,有非静态方法
静态方法会返回该类的一个引用static InetAddress getByName(String host) //以IP地址为主,获取InetAddress对象在给定主机名的情况下确定主机的IP地址staitc InetAddress getLocalHost()返回本地主机String getHostAddress()返回IP地址字符串String getHostName()获取此IP地址的主机名*/
import java.net.*;
class IPDemo 
{public static void main(String[] args) throws Exception{//获取本地主机信息InetAddress i = InetAddress.getLocalHost();System.out.println("获取本地主机信息:"+i);//获取主机名String name = i.getHostName();System.out.println("本地主机名:"+name);//获取主机地址String addr = i.getHostAddress();System.out.println("本地主机IP地址:"+addr);//获取任意一台主机的IP地址对象InetAddress by = i.getByName("127.0.0.1");//给定本机的IP地址或者主机名,主机名或IP地址都可以System.out.println("获取IP地址为127.0.0.1的主机名:"+by.getHostName());System.out.println("获取IP地址为127.0.0.1的主机IP地址:"+by.getHostAddress());//联网情况下才可以获取,如果没有解析成功,则返回给定的信息//给定IP地址或者主机名(如:www.baidu.com)。由于百度不止一台主机,在获取时可能会得到不同的IP地址//以名称为地址,会有一个解析的过程。DNS域名服务器。将地址与IP地址进行转换//所以,一般都IP地址为主。不涉及解析的过程,效率高。//InetAddress ia = i.getByName("www.baidu.com");//获取百度的IP地址对象InetAddress ia = i.getByName("197.9.20.1");String iname = ia.getHostName();System.out.println("获取IP地址为197.9.20.1的主机名:"+iname);String iaddr = ia.getHostAddress();System.out.println("获取IP地址为197.9.20.1的主机IP地址:"+iaddr);}
}