网络编程基础

InetAddress 类用于描述和包装一个 Internet IP 地址,并提供了相关的常用方法,例如解析 IP 地址的
·3·
主机名称、获取本机 IP 地址的封闭、测试指定 IP 地址是否可达等。InetAddress 实现了 java.io. Serializable
接口,不允许继承。它通过三个方法返回 InetAddress 实例:
 getLocalhost():返回封装本地地址的实例。
 getAllByName(String host):返回封装 Host 地址的 InetAddress 实例数组。
 getByName(String host):返回一个封装 Host 地址的实例。其中,Host 可以是域名或者是一个合
法的 IP 地址。
表 22.2 列出了 InetAddress 类的常用方法:
表 22.2 InetAddress 类的常用方法
方法名称
方法说明
返回类型
getLocalHost()
返回本地主机的InetAddress对象
InetAddress
getByName(String host)
返回指定主机名称的IP地址
InetAddress
getAllByName(String host)
返回指定主机名称数组
InetAddress数组
getHostName()
获取本地主机名称
String
getHostAddress()
获取本地主机IP地址
String
isReachable(int timeout)
在指定的时间(毫秒)内,测试IP地址是否可到达
boolean
22.2.2 实例:获取本地主机和 Internet 公共域名的名称和 IP 地址
【例 22.1】:编写一个应用程序的示例。程序的功能包括获取本地主机域名和 IP 地址;获取 Sun
公司网站的主机域名和 IP 地址。实现此程序的步骤如下。
(1)在 D 盘根目录下,创建文件夹 chapter22,并在 chapter22 目录下,创建 java 源文件
InetAddressDemo.java;
(2)使用记事本,打开 InetAddressDemo.java 源文件进行编辑,输入以下代码:
package chapter22;
//创建 chapter18 包
import java.net.*;
因为程序中使用了 net 类,所以要引入 java.net 包。
(3)接着编写 InetAddressDemo 类,并在该类中定义两个方法,分别用来获取要地主机域名和 IP
地址以及 sun 公司网站域名和 IP 地址。代码如下。
public class InetAddressDemo{
//获取本地主机名和 IP 地址
static void outputLocalHostAddress(){
……
}
//获得给定域名和 IP 地址
static void outputIpAddress(){
……
}
}
(4)实现方法 outputLocalHostAddress(),获得本机主机名和 IP 地址。具体代码如下。
//获取本地主机域名和 IP 地址
static void outputLocalHostAddress(){
try{
//返回运行程序主机的域名和 IP 地址
InetAddress address = InetAddress.getLocalHost();
System.out.println("本机的主机名为:" + address.getHostName());
System.out.println("本机的 IP 为:" + address.getHostAddress());
4
}catch(UnknownHostException e){
//不能发现主机时抛出异常
System.out.println("找不到主机地址。");
}
}
(5)实现方法 outputIpAddress(),获得 sun 公司网站域名和 IP 地址。具体代码如下。
//获得给定主机名和 IP 地址
static void outputIpAddress(){
try{
InetAddress address = InetAddress.getByName("www.sun.com");
//输出主机名
System.out.println("Sun 公司网站的域名为:" + address.getHostName());
System.out.println("Sun 公司网站的 IP 为:" + address.getHostAddress());
}catch(UnknownHostException e){
//不能发现主机时抛出异常
System.out.println("找不到主机地址。");
}
}
(6)编写 main()方法,调用上面定义的两个方法。代码如下。
public static void main(String[] args){
outputLocalHostAddress();
//输出本机主机名和 IP 地址
System.out.println();
//空行
outputIpAddress();
//输出 sun 公司网站域名的 IP 地址
}
(6)使用下面的命令编译并运行主程序 InetAddressDemo.java。
javac –d . InetAddressDemo.java
java chapter22. InetAddressDemo
(7)编译并运行以后,会看到如下的输出结果:
本机的主机名为:xlw
本机的 IP 为:192.168.1.52
Sun 公司网站的域名为:www.sun.com
Sun 公司网站的 IP 为:72.5.124.61
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值