网络编程是指编程运行在多个设备(计算机)上的程序,这些设备通过网络连接起来。

0x01 网络编程概述

网络编程:在网络通信协议下,实现网络互连的不同计算机上运行的程序间可以进行数据交换。

0x02 网络编程三要素

  • IP 地址:要想让网络中的计算机能够互相通信,必须为每台计算机指定一个标识号,通过这个标识号来制定要接收数据的计算机和识别发送的计算机,而 IP 地址就是这个标识号,也就是设备的标识。
  • 端口:网络的通信,本质上是两个应用程序的通信。每台计算机都有很多的应用程序,那么在网络通信时,如何区分这些应用程序呢?如果说 IP 地址可以唯一标识网络中的设备,那么端口号就可以唯一标识设备中的应用程序了 。也就是应用程序的标识。
  • 通过计算机网络可以使多台计算机实现连接,位于同一个网络中的计算机在进行连接和通信时需要遵守一定的规则,这就好比在道路中行驶的汽车一定要遵守交通规则一样。在计算机网络中,这些连接和通信的规则被称为网络通信协议,它对数据的传输格式、传输速率、传输步骤做了统一的规定,通信双方必须同时遵守才能完成数据交换。常见的协议有 UDP 协议和 TCP 协议。

0x03 通过 InetAddress 类获取本机 IP 地址。

import java.net.InetAddress;
import java.net.UnknownHostException;

public class Main {
    public static void main(String[] args) throws UnknownHostException {
        InetAddress address = InetAddress.getLocalHost();
        System.out.println("主机名:" + address.getHostName());
        System.out.println("IP地址:" + address.getHostAddress());
    }
}