栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java 网络编程中的常用类

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java 网络编程中的常用类

1.引言

Java 为了跨平台,在网络应用通信时是不允许直接调用操作系统接口的,而是由 java.net 包来提供网络功能。下面我们来介绍几个 java.net 包中的常用的类。

2.InetAddress 的使用

作用:封装计算机的 IP 地址和域名。 特点:这个类没有构造方法。如果要得到对象,只能通过 getLocalHost()、getByName()等静态方法创建对象。

  1. 获取本机信息:
    获取本机信息需要使用 getLocalHost 方法创建 InetAddress 对象。getLocalHost() 方法返回一个 InetAddress 对象,这个对象包含了本机的 IP 地址,计算机名等信息。
 @Test
    public void method_01() throws Exception {
        //实例化InetAddress对象
        InetAddress inetAddress = InetAddress.getLocalHost();
        //返回当前计算机的IP地址
        System.out.println(inetAddress.getHostAddress());
        //返回当前计算机名
        System.out.println(inetAddress.getHostName());
    }

  1. 根据域名获取计算机的信息:
    根据域名获取计算机信息时需要使用 getByName(“域名”)方法创建 InetAddress 对 象。
 @Test
    public void method_02() throws Exception {
        InetAddress inetAddress = InetAddress.getByName("www.baidu.com");
        //返回当前计算机的IP地址
        System.out.println(inetAddress.getHostAddress());
        //返回当前计算机名
        System.out.println(inetAddress.getHostName());
    }

  1. 根据 IP 获取计算机的信息:
    根据 IP 地址获取计算机信息时需要使用 getByName(“IP”)方法创建 InetAddress对象。
 @Test
    public void method_03() throws Exception {
        InetAddress inetAddress = InetAddress.getByName("36.152.44.96");
        //返回当前计算机的IP地址
        System.out.println(inetAddress.getHostAddress());
        //返回当前计算机名,
        System.out.println(inetAddress.getHostName());
    }

3.InetSocketAddress 的使用

作用:包含 IP 和端口信息,常用于 Socket 通信。此类实现 IP 套接字地址(IP 地址 + 端口号),不依赖任何协议。 InetSocketAddress 相比较 InetAddress 多了一个端口号,端口的作用:一台拥有 IP 地址 的主机可以提供许多服务,比如 Web 服务、FTP 服务、SMTP 服务等,这些服务完全可以通 过 1 个 IP 地址来实现。 那么,主机是怎样区分不同的网络服务呢?显然不能只靠 IP 地址,因为 IP 地址与网络 服务的关系是一对多的关系。实际上是通过“IP 地址+端口号”来区分不同的服务的

InetSocketAddress inetSocketAddress = new InetSocketAddress("www.baidu.com",80);
        //返回当前计算机的IP地址
        System.out.println(inetSocketAddress.getAddress().getHostAddress());
        //返回当前计算机名,
        System.out.println(inetSocketAddress.getHostName());

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/425246.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号