public abstract class DatagramSocketImpl extends Object implements SocketOptions
| Modifier and Type | Field and Description | 
|---|---|
| protected FileDescriptor | fd
              文件描述符对象。 
             | 
| protected int | localPort
              本地端口号。 
             | 
IP_MULTICAST_IF, IP_MULTICAST_IF2, IP_MULTICAST_LOOP, IP_TOS, SO_BINDADDR, SO_BROADCAST, SO_KEEPALIVE, SO_LINGER, SO_OOBINLINE, SO_RCVBUF, SO_REUSEADDR, SO_SNDBUF, SO_TIMEOUT, TCP_NODELAY| Constructor and Description | 
|---|
| DatagramSocketImpl() | 
| Modifier and Type | Method and Description | 
|---|---|
| protected abstract void | bind(int lport, InetAddress laddr)
              将数据报套接字绑定到本地端口和地址。 
             | 
| protected abstract void | close()
              关闭插座。 
             | 
| protected void | connect(InetAddress address, int port)
              将数据报套接字连接到远程目标。 
             | 
| protected abstract void | create()
              创建数据报套接字。 
             | 
| protected void | disconnect()
              从其远程目标断开数据报套接字。 
             | 
| protected FileDescriptor | getFileDescriptor()
              获取数据报套接字文件描述符。 
             | 
| protected int | getLocalPort()
              获取本地端口。 
             | 
| protected abstract int | getTimeToLive()
              检索TTL(生存时间)选项。 
             | 
| protected abstract byte | getTTL() 
             已弃用 
               
              使用getTimeToLive代替。 
              | 
| protected abstract void | join(InetAddress inetaddr)
              加入组播组。 
             | 
| protected abstract void | joinGroup(SocketAddress mcastaddr, NetworkInterface netIf)
              加入组播组。 
             | 
| protected abstract void | leave(InetAddress inetaddr)
              离开组播组。 
             | 
| protected abstract void | leaveGroup(SocketAddress mcastaddr, NetworkInterface netIf)
              离开组播组。 
             | 
| protected abstract int | peek(InetAddress i)
              仔细看看它是从哪里来的。 
             | 
| protected abstract int | peekData(DatagramPacket p)
              仔细看看它是从哪里来的。 
             | 
| protected abstract void | receive(DatagramPacket p)
              接收数据报包。 
             | 
| protected abstract void | send(DatagramPacket p)
              发送数据报包。 
             | 
| protected abstract void | setTimeToLive(int ttl)
              设置TTL(生存时间)选项。 
             | 
| protected abstract void | setTTL(byte ttl) 
             已弃用 
               
              使用setTimeToLive代替。 
              | 
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetOption, setOptionprotected int localPort
protected FileDescriptor fd
protected abstract void create()
                        throws SocketException 
          SocketException - 如果底层协议有错误,如TCP错误。 
           protected abstract void bind(int lport,
                             InetAddress laddr)
                      throws SocketException 
          lport - 本地港口 
           laddr - 本地地址 
           SocketException - 如果底层协议有错误,如TCP错误。 
           protected abstract void send(DatagramPacket p) throws IOException
p - 要发送的数据包。 
           IOException - 发送数据报包时是否发生I / O异常。 
           PortUnreachableException - 如果套接字连接到当前不可达PortUnreachableException ,可能会抛出。 
            注意,不能保证会抛出异常。 
           protected void connect(InetAddress address, int port) throws SocketException
如果连接到套接字的远程目的地不存在,否则无法访问,并且如果已经收到该地址的ICMP目的地不可达分组,则后续的发送或接收调用可能会引发PortUnreachableException。 注意,不能保证会抛出异常。
address - 要连接的远程InetAddress 
           port - 远程端口号 
           SocketException - 如果套接字无法连接到远程目标,可能会抛出 
           protected void disconnect()
protected abstract int peek(InetAddress i) throws IOException
InetAddress更新到数据包来自的地址。 
          i - 一个InetAddress对象 
           IOException - 如果发生I / O异常 
           PortUnreachableException - 如果套接字连接到当前不可达目的地,则可能会抛出该错误。 
            注意,不能保证会抛出异常。 
           protected abstract int peekData(DatagramPacket p) throws IOException
DatagramPacket 。 
           数据被返回但不被消耗,以便随后的peekData / receive操作将看到相同的数据。 
          p - 分组接收。 
           IOException - 如果发生I / O异常 
           PortUnreachableException - 如果套接字连接到当前不可达PortUnreachableException ,可能会抛出。 
            注意,不能保证会抛出异常。 
           protected abstract void receive(DatagramPacket p) throws IOException
p - 分组接收。 
           IOException - 如果在接收到数据报包时发生I / O异常。 
           PortUnreachableException - 如果套接字连接到当前不可达PortUnreachableException ,可能会抛出。 
            注意,不能保证会抛出异常。 
           @Deprecated protected abstract void setTTL(byte ttl) throws IOException
ttl - 指定TTL值的字节 
           IOException - 如果在设置生存时间选项时发生I / O异常。 
           getTTL() 
           @Deprecated protected abstract byte getTTL() throws IOException
IOException - 如果在检索生存时间选项时发生I / O异常 
           setTTL(byte) 
           protected abstract void setTimeToLive(int ttl)
                               throws IOException 
          ttl - 一个 
            int生存时间值的 
            int 
           IOException - 如果在设置生存时间选项时发生I / O异常。 
           getTimeToLive() 
           protected abstract int getTimeToLive()
                              throws IOException 
          int代表了实时价值 
           IOException - 如果在检索生存时间选项时发生I / O异常 
           setTimeToLive(int) 
           protected abstract void join(InetAddress inetaddr) throws IOException
inetaddr - 要加入的组播地址。 
           IOException - 加入多播组时是否发生I / O异常。 
           protected abstract void leave(InetAddress inetaddr) throws IOException
inetaddr - 多播地址要离开。 
           IOException - 如果在离开多播组时发生I / O异常。 
           protected abstract void joinGroup(SocketAddress mcastaddr, NetworkInterface netIf) throws IOException
mcastaddr - 加入地址。 
           netIf - 指定接收组播数据报包的本地接口 
           IOException - 加入多播组时是否发生I / O异常 
           protected abstract void leaveGroup(SocketAddress mcastaddr, NetworkInterface netIf) throws IOException
mcastaddr - 地址离开。 
           netIf - 指定本地界面离开组 
           IOException - 如果在离开多播组时发生I / O异常 
           protected abstract void close()
protected int getLocalPort()
int代表本地端口值 
           protected FileDescriptor getFileDescriptor()
FileDescriptor对象 
            Submit a bug or feature 
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
 Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.