Java重修笔记 InetAddress 类和 Socket 类

InetAddress 类相关方法
1. 获取本机 InetAddress 对象:getLocalHost

public static InetAddress getLocalHost() throws UnknownHostException

返回值:本地主机的名字和地址

异常:UnknownHostException - 如果本地主机名无法解析成地址

2. 根据指定主机名/域名来获取 IP 地址对象:getByName

public static InetAddress getByName(String host) throws UnknownHostException

返回值:给定主机名的IP地址

异常:UnknownHostException - 如果没有找到 host IP地址,或者是否为全局IPv6地址指定了scope_id。

SecurityException - 如果安全管理器存在,并且其 checkConnect 方法不允许该操作

3. 根据 InetAddress 对象获取主机名:getHostName

public String getHostName()

4. 根据 InetAddress 对象获取地址:getHostAddress

public String getHostAddress()

java 复制代码
public class API_ {
    public static void main(String[] args) throws UnknownHostException {
        // 获取本机的 InetAddress 对象
        InetAddress localHost = InetAddress.getLocalHost();
        System.out.println("localHost = " + localHost); // DESKTOP-L4UPSF9/192.168.1.4

        // 根据指定主机名/域名来获取 IP 地址对象:getByName
        InetAddress host1 = InetAddress.getByName("DESKTOP-L4UPSF9");
        System.out.println("host1 = " + host1); // DESKTOP-L4UPSF9/192.168.1.4
        InetAddress host2 = InetAddress.getByName("www.baidu.com");
        System.out.println("host2 = " + host2); // www.baidu.com/110.242.68.4

        // 根据 InetAddress 对象获取主机名 getHostName
        String hostName = host2.getHostName();
        System.out.println(hostName); // www.baidu.com

        // 根据 InetAddress 对象获取域名 getHostAddress
        String hostAddress = host2.getHostAddress();
        System.out.println(hostAddress); // 110.242.68.3
    }
}
Socket 类
  1. Socket 被称为套接字,在开发网络应用程序时被广泛采用,以至于成为事实上的标准

  2. 通信的两端都要有 Socket,是两台机器间通信的端点

  3. 网络通信其实就是 Socket 之间的通信

  4. Socket 允许程序把网络连接当成一个流,让数据在两个 Socket 之间通过 IO 流来传输

  5. 主动发起通信的应用程序被称为客户端,等待通信请求的为服务端

相关推荐
XuanXu12 分钟前
Java AQS原理以及应用
java
风象南3 小时前
SpringBoot中6种自定义starter开发方法
java·spring boot·后端
mghio12 小时前
Dubbo 中的集群容错
java·微服务·dubbo
咖啡教室17 小时前
java日常开发笔记和开发问题记录
java
咖啡教室17 小时前
java练习项目记录笔记
java
鱼樱前端17 小时前
maven的基础安装和使用--mac/window版本
java·后端
RainbowSea18 小时前
6. RabbitMQ 死信队列的详细操作编写
java·消息队列·rabbitmq
RainbowSea18 小时前
5. RabbitMQ 消息队列中 Exchanges(交换机) 的详细说明
java·消息队列·rabbitmq
我不会编程55520 小时前
Python Cookbook-5.1 对字典排序
开发语言·数据结构·python