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. 主动发起通信的应用程序被称为客户端,等待通信请求的为服务端

相关推荐
硕风和炜3 分钟前
【LeetCode: 2492. 两个城市间路径的最小分数 + DFS】
java·算法·leetcode·深度优先·dfs·bfs·并查集
upgrador18 分钟前
基础知识:C++ STL构造函数的左闭右开惯例及其实现原理
开发语言·c++
格子软件21 分钟前
2026年GEO贴牌代理:分布式多级分账状态机源码深度解构
java·vue.js·分布式·vue·geo
我是一颗柠檬1 小时前
【Java项目技术亮点】加权轮询负载均衡算法
java·算法·负载均衡
灯厂码农1 小时前
C语言动态内存分配完全指南(malloc、calloc、realloc、free)
java·c语言·算法
yoothey1 小时前
报废审批流规则引擎设计——责任链模式完整实现
linux·开发语言·bash
geovindu1 小时前
python: Functional Options Pattern
开发语言·后端·python·设计模式·惯用法模式·函数式选项模式
wuyk5552 小时前
24. C 语言模块化:不是拆几个.c 文件那么简单
c语言·开发语言·stm32·单片机
四月天432 小时前
web安全-SSTI(服务器模板注入)
笔记·学习·web安全·网络安全
梦梦代码精2 小时前
电商系统不是技术堆叠:LikeShop如何用分层Hold住复杂业务?
java·docker·代码规范