众所周知,IP是Internet Protocol的简称,它是一种网络协议。internet依靠TCP\IP协议,在全球的范围内实现了不同硬件结构,不同操作系统,不同网络系统的互联。在Internet网络中,每一台主机在网络上用为其分配的Internet地址代表自己,这个地址就是IP地址。
在JAVA 语言中,java.net包中的InetAddress类是与IP地址相关的类,利用该类可以获取IP地址,主机地址等信息。
InetAddress类的常用方法如下 所示:
方法 | 返回值 | 说明 |
getByName(String host) | InetAdress | 获取与host相对应的InetAddress对象 |
getHostAddress() | String | 获取IP地址 |
getHostName() | String | 获取此IP地址的主机名 |
getLocalHost() | InetAddress | 返回本地主机的对象 |
这里我们尝试使用InetAddress类的getHostName()和getHostAddress()方法获取本地主机的本机名和IP地址,具体代码如下:
package com.guo;
import java.net.*; //导入java.NET包
public class Address { //创建类
public static void main(String[] args){
InetAddress ip; // 创建InetAddress对象
try{ //使用try语句块捕捉可能出现的异常
ip=InetAddress.getLocalHost(); //实例化对象
String localname=ip.getHostName(); //获取本机名
String localip=ip.getHostAddress(); //获取本机IP地址
System.out.println("本机名为:"+localname);
System.out.println("本机IP为:"+localip);
}catch(UnknownHostException e){
e.printStackTrace(); //输出异常信息
}
}
}
运行结果如下所示: