JavaTM Platform
Standard Ed. 6

java.net
クラス DatagramSocketImpl

java.lang.Object
  上位を拡張 java.net.DatagramSocketImpl
すべての実装されたインタフェース:
SocketOptions

public abstract class DatagramSocketImpl
extends Object
implements SocketOptions

抽象データグラムおよびマルチキャストソケットを実装する基底クラスです。

導入されたバージョン:
JDK1.1

フィールドの概要
protected  FileDescriptor fd
          ファイル記述子オブジェクトです。
protected  int localPort
          ローカルポート番号です。
 
インタフェース java.net.SocketOptions から継承されたフィールド
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
 
コンストラクタの概要
DatagramSocketImpl()
           
 
メソッドの概要
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 を使用してください。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
インタフェース java.net.SocketOptions から継承されたメソッド
getOption, setOption
 

フィールドの詳細

localPort

protected int localPort
ローカルポート番号です。


fd

protected FileDescriptor fd
ファイル記述子オブジェクトです。

コンストラクタの詳細

DatagramSocketImpl

public DatagramSocketImpl()
メソッドの詳細

create

protected abstract void create()
                        throws SocketException
データグラムソケットを作成します。

例外:
SocketException - 使用しているプロトコルでエラー (TCP エラーなど) が発生した場合

bind

protected abstract void bind(int lport,
                             InetAddress laddr)
                      throws SocketException
データグラムソケットをローカルのポートおよびアドレスにバインドします。

パラメータ:
lport - ローカルポート
laddr - ローカルアドレス
例外:
SocketException - 使用しているプロトコルでエラー (TCP エラーなど) が発生した場合

send

protected abstract void send(DatagramPacket p)
                      throws IOException
データグラムパケットを送信します。パケットには、データと、パケットの送信先アドレスとが含まれています。

パラメータ:
p - 送信されるパケット
例外:
IOException - データグラムパケットの送信中に入出力例外が発生した場合
PortUnreachableException - 現在到達不可能になっている宛先にソケットが接続されている場合にスローされる可能性がある。例外が必ずスローされるとは限らないことに注意

connect

protected void connect(InetAddress address,
                       int port)
                throws SocketException
データグラムソケットをリモート接続先に接続します。これは、リモートアドレスをローカルソケットに関連付け、データグラムの送受信をこの接続先に対してだけ行えるようにします。これをオーバーライドして、ネイティブのシステム接続が呼び出されるようにしてもかまいません。

ソケットを接続するリモート接続先が存在しないか到達不可能の場合、およびそのアドレスに対する ICMP 転送先到達不能パケットを受信した場合は、以降の送信または受信呼び出しで PortUnreachableException がスローされることがあります。例外がスローされるという保証があるわけではありません。

パラメータ:
address - 接続先のリモート InetAddress
port - リモートポート番号
例外:
SocketException - リモート接続先にソケットを接続できない場合にスローされる可能性がある
導入されたバージョン:
1.4

disconnect

protected void disconnect()
リモート接続先からデータグラムソケットを切り離します。

導入されたバージョン:
1.4

peek

protected abstract int peek(InetAddress i)
                     throws IOException
パケットを調べて、パケットの送信者を確認します。指定された InetAddress をパケットの送信元アドレスで更新します。

パラメータ:
i - InetAddress オブジェクト
戻り値:
パケットの送信元ポート番号
例外:
IOException - 入出力例外が発生した場合
PortUnreachableException - 現在到達不可能になっている宛先にソケットが接続されている場合にスローされる可能性がある。例外が必ずスローされるとは限らないことに注意

peekData

protected abstract int peekData(DatagramPacket p)
                         throws IOException
パケットを調べて、パケットの送信者を確認します。指定された DatagramPacket にデータがコピーされます。データは返されますが使用されません。したがって、その後の PeekData または受信操作では同じデータを確認します。

パラメータ:
p - 受信したパケット
戻り値:
パケットの送信元ポート番号
例外:
IOException - 入出力例外が発生した場合
PortUnreachableException - 現在到達不可能になっている宛先にソケットが接続されている場合にスローされる可能性がある。例外が必ずスローされるとは限らないことに注意
導入されたバージョン:
1.4

receive

protected abstract void receive(DatagramPacket p)
                         throws IOException
データグラムパケットを受信します。

パラメータ:
p - 受信したパケット
例外:
IOException - データグラムパケットの受信中に入出力例外が発生した場合
PortUnreachableException - 現在到達不可能になっている宛先にソケットが接続されている場合にスローされる可能性がある。例外が必ずスローされるとは限らないことに注意

setTTL

@Deprecated
protected abstract void setTTL(byte ttl)
                        throws IOException
推奨されていません。 代わりに setTimeToLive を使用してください。

TTL (有効期間) オプションを設定します。

パラメータ:
ttl - TTL 値を指定するバイト
例外:
IOException - 有効期間オプションの設定中に入出力例外が発生した場合
関連項目:
getTTL()

getTTL

@Deprecated
protected abstract byte getTTL()
                        throws IOException
推奨されていません。 代わりに getTimeToLive を使用してください。

TTL (有効期間) オプションを取得します。

戻り値:
TTL 値を表すバイト
例外:
IOException - 有効期間オプションの取得中に入出力例外が発生した場合
関連項目:
setTTL(byte)

setTimeToLive

protected abstract void setTimeToLive(int ttl)
                               throws IOException
TTL (有効期間) オプションを設定します。

パラメータ:
ttl - 有効期間値を指定する int
例外:
IOException - 有効期間オプションの設定中に入出力例外が発生した場合
関連項目:
getTimeToLive()

getTimeToLive

protected abstract int getTimeToLive()
                              throws IOException
TTL (有効期間) オプションを取得します。

戻り値:
有効期間値を表す int
例外:
IOException - 有効期間オプションの取得中に入出力例外が発生した場合
関連項目:
setTimeToLive(int)

join

protected abstract void join(InetAddress inetaddr)
                      throws IOException
マルチキャストグループに参加します。

パラメータ:
inetaddr - 参加に使用するアドレス
例外:
IOException - マルチキャストグループへの参加中に入出力例外が発生した場合

leave

protected abstract void leave(InetAddress inetaddr)
                       throws IOException
マルチキャストグループから離れます。

パラメータ:
inetaddr - 離れるマルチキャストアドレス
例外:
IOException - マルチキャストグループから離れる際に入出力例外が発生した場合

joinGroup

protected abstract void joinGroup(SocketAddress mcastaddr,
                                  NetworkInterface netIf)
                           throws IOException
マルチキャストグループに参加します。

パラメータ:
mcastaddr - 参加に使用するアドレス
netIf - マルチキャストデータグラムパケットを受信するローカルインタフェースを指定
例外:
IOException - マルチキャストグループへの参加中に入出力例外が発生した場合
導入されたバージョン:
1.4

leaveGroup

protected abstract void leaveGroup(SocketAddress mcastaddr,
                                   NetworkInterface netIf)
                            throws IOException
マルチキャストグループから離れます。

パラメータ:
mcastaddr - 離れるアドレス
netIf - グループを離れるローカルインタフェースを指定
例外:
IOException - マルチキャストグループから離れる際に入出力例外が発生した場合
導入されたバージョン:
1.4

close

protected abstract void close()
ソケットを閉じます。


getLocalPort

protected int getLocalPort()
ローカルポートを取得します。

戻り値:
ローカルポートの値を表す int

getFileDescriptor

protected FileDescriptor getFileDescriptor()
データグラムソケットのファイル記述子を取得します。

戻り値:
データグラムソケットのファイル記述子を表す FileDescriptor オブジェクト

JavaTM Platform
Standard Ed. 6

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。