Java Socket通信之InetAddress类的应用

本文探讨了Java中的InetAddress类在Socket通信中的作用,它用于标识网络上的硬件资源,处理IP地址。介绍了如何通过getByName(String host)和getLocalHost()方法获取InetAddress实例。
摘要由CSDN通过智能技术生成
  1. InetAddress 类用于标识网络上的硬件资源,表示互联网协议(IP)地址。

  2. InetAddress对象的获取
    InetAddress的构造函数不是公开的(public),所以需要通过它提供的静态方法来获取,有以下的方法:

方法说明
static InetAddress[] getAllByName(String host)在给定主机名的情况下,根据系统上的配置的名称服务返回其IP地址所组成的数组
static InetAddress getByAddress(byte[] addr)在给定原始IP地址的情况下,返回InetAddress对象
static InetAddress getByAddress(String host,byte[] addr)根据提供的主机名和IP地址创建InetAddress
static InetAddress getByName(String host)在给定主机名的情况下确定主机的IP地址
static InetAddress getLocalHost()返回本地主机

Example1: 通过getByName(String host)方法获取实例

//创建InetAddress对象
InetAddress  address2=InetAddress.getByName("PC-PC");
//获得该对象的主机名
System.out.println("计算机名:"+address2.getHostName());
//获得该对象的主机地址
System.out.println("IP地址:"+address2.getHostAddress());

这里写图片描述

Example2:通过getLocalHost()方法获取本机的InetAddress实例

//获取本机的InetAddress实例
InetAddress address= InetAddress.getLocalHost();
System.out.println("计算机名:"+address.getHostName());
System.out.println("IP地址:"+address.getHostAddress());
//获取字节数组形式IP地址
byte[] bytes=address.getAddress();
System.out.println("字节数组形式的IP:"+Arrays.toString(bytes));
//直接输出InetAddress对象
System.out.println(address);

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值