Java--网络通信

1.端口Port:

        通常计算机上提供了HTTP,FTP等多种服务,客户机通过不同的端口来确定连接到服务器的哪项服务上。 

Java--网络通信_第1张图片

2.套接字Socket:

         套接字Socket用于将应用程序与端口连接起来。套接字是一个假想的链接装置。

Java--网络通信_第2张图片

 3.InetAddress类

        java.net包中的InetAddress类是与IP地址相关的类,利用该类可获取IP地址,主机地址等信息。

InetAddress类的常用方法
方法 返回值 说明
getByName(String host) InetAddress 获取与Host相对应的InetAddress对象
getHostAddress() String 获取InetAddress对象所包含的IP地址
getHostName() String 获取此IP地址的主机名
getLocalHost() InetAddress 返回本地主机的InetAddress对象
package netaddr;

import java.net.InetAddress;

public class GetAddress {
    public static void main(String[] args) {
        InetAddress addr;
        try {
            addr = InetAddress.getLocalHost();
            System.out.println("本机InetAddress.getLocalHost()为:" + addr);
            System.out.println("本机addr.getHostName()为:" + addr.getHostName());
            System.out.println("本机addr.getHostAddress()为:" + addr.getHostAddress());
            System.out.println("本机addr.getAddress()为:" + addr.getAddress());
            System.out.println("本机addr.getCanonicalHostName()为:" + addr.getCanonicalHostName());
            System.out.println("本机addr.getCanonicalHostName()为:" + addr.getCanonicalHostName());
            System.out.println("本机addr.isLoopbackAddress()为:" + addr.isLoopbackAddress());
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

输出:
        本机InetAddress.getLocalHost()为:HFQ7FJ9Hxx/192.168.xx.xx
        本机addr.getHostName()为:HFQ7FJ9H1G
        本机addr.getHostAddress()为:192.168.xx.xx
        本机addr.getAddress()为:[B@232204xx
        本机addr.getCanonicalHostName()为:192.168.xx.xx
        本机addr.getCanonicalHostName()为:192.168.xx.xx
        本机addr.isLoopbackAddress()为:false

4.ServerSocket类

ServerSocket类的常用方法
方法 返回值 说明
accept() Socket 等待客户机的连接,若连接,则创建一个套接字
isBound() boolean 判断ServerSocket的绑定状态
getInetAddress() InetAddress 返回此服务器套接字的本地地址
isClosed() boolean 返回此服务器套接字的关闭状态
close() void 关闭服务器套接字
bind() void 将serverSocket绑定到特定的IP地址和端口
getPort() int 返回服务器套接字等待的端口号

你可能感兴趣的:(Java,服务器,linux,网络,网络编程)