📜  Java中的Java .net.ProtocolFamily 类(1)

📅  最后修改于: 2023-12-03 15:16:29.541000             🧑  作者: Mango

Java中的ProtocolFamily类

ProtocolFamily类是Java中用于表示网络协议族的类。该类用于标识和选择Internet协议族版本和实现。

使用

ProtocolFamily类是一个枚举类,其有两个定义值:

  • AF_INET:IPv4协议,适用于Internet地址族
  • AF_INET6:IPv6协议,适用于Internet地址族

示例代码:

import java.net.*;
public class ProtocolFamilyExample {
  public static void main(String[] args) throws SocketException {
    System.out.println(ProtocolFamily.AF_INET);
    System.out.println(ProtocolFamily.AF_INET6);
  }
}

输出:

AF_INET
AF_INET6
应用

ProtocolFamily类在Java增加了对Internet协议族的支持,可以在开发网络应用时使用该类选择IPv4或IPv6协议。例如,在创建Socket对象时,可以添加ProtocolFamily参数以选择所需要的协议族版本:

import java.net.*;
public class SocketExample {
  public static void main(String[] args) throws Exception {
    InetSocketAddress addr = new InetSocketAddress("localhost", 8080);
    ProtocolFamily pf = ProtocolFamily.AF_INET;
    Socket s = new Socket(pf, SocketType.SOCK_STREAM, 0);
    s.connect(addr);
    s.close();
  }
}
参考