全パッケージ  クラス階層  このパッケージ  前項目  次項目  インデックス

クラス java.net.DatagramSocket

java.lang.Object
   |
   +----java.net.DatagramSocket

public class DatagramSocket
extends Object
このクラスは、データグラムを送受信するためのソケットを表します。

データグラムソケットとは、無接続のパケット配布サービスの送信点または受信点です。データグラムソケット上で送信または受信する各パケットは、それぞれ異なるアドレスで経路指定されます。あるマシンから別のマシンに複数のパケットを送信する場合、各パケットは異なる経路で送信される可能性があり、宛先には無作為の順序で到達する可能性があります。

参照:
DatagramPacket

Constructor Index

 o DatagramSocket()
データグラムソケットを作成し、ローカルホストマシン上の使用可能なポートに結合する。
 o DatagramSocket(int)
データグラムソケットを作成し、ローカルホストマシン上の指定のポートに結合する。
 o DatagramSocket(int, InetAddress)
指定したローカルアドレスに結合されたデータグラムソケットを作成する。

Method Index

 o close()
このデータグラムソケットをクローズする。
 o getLocalAddress()
ソケットの結合先のローカルアドレスを取得する。
 o getLocalPort()
このソケットの結合先のローカルホスト上のポート番号を返す。
 o getSoTimeout()
SO_TIMEOUT の設定を取得する。
 o receive(DatagramPacket)
このソケットからデータグラムパケットを受け取る。
 o send(DatagramPacket)
このソケットからデータグラムパケットを送信する。
 o setSoTimeout(int)
指定した待ち時間の値 (ミリ秒単位) をもつ SO_TIMEOUT を有効または無効にする。

Constructors

 o DatagramSocket
  public DatagramSocket() throws SocketException
データグラムソケットを作成し、ローカルホスト上の使用可能なポートに結合します。

例外 : SocketException
ソケットを開くことができなかった、または指定のローカルポートにソケットを結合できなかった
 o DatagramSocket
  public DatagramSocket(int port) throws SocketException
データグラムソケットを作成し、それをローカルホストマシン上の指定のポートに結合します。

パラメータ:
local - 使用するポート
例外 : SocketException
ソケットを開くことができなかった、または指定のローカルポートにソケットを結合できなかった
 o DatagramSocket
  public DatagramSocket(int port,
                        InetAddress laddr) throws SocketException
指定のローカルアドレスに結合されたデータグラムソケットを作成します。ローカルポートは、0 以上 65535 以下の範囲で指定します。

パラメータ:
port - 使用するローカルポート
laddr - 結合先のローカルアドレス

Methods

 o send
  public void send(DatagramPacket p) throws IOException
このソケットからデータグラムパケットを送信します。DatagramPacket には、送信するデータ、その長さ、リモートホストの IP アドレス、リモートホスト上のポート番号を表す情報が含まれています。

パラメータ:
p - 送信する DatagramPacket
例外 : IOException
I/O エラーが発生した
参照:
DatagramPacket
 o receive
  public synchronized void receive(DatagramPacket p) throws IOException
このソケットからデータグラムパケットを受け取ります。このメソッドが終了すると、DatagramPacket のバッファに受信したデータが保存されます。データグラムパケットにも、送信側の IP アドレス、送信元マシンのポート番号が含まれています。

このメソッドは、データグラムを受信するまでは戻りません。データグラムパケットオブジェクトの length フィールドには、受信メッセージの長さが含まれます。受信したメッセージがバッファサイズよりも大きい場合は、メッセージの、入りきらない分が切り捨てられます。

パラメータ:
p - 受信したデータを保存する DatagramPacket
例外 : IOException
I/O エラーが発生した
参照:
DatagramPacket, DatagramSocket
 o getLocalAddress
  public InetAddress getLocalAddress()
ソケットの結合先のローカルアドレスを取得します。

 o getLocalPort
  public int getLocalPort()
このソケットの結合先のローカルホスト上のポート番号を返します。

返り値:
ローカルホスト上にあるこのソケットの結合先のポート番号
 o setSoTimeout
  public synchronized void setSoTimeout(int timeout) throws SocketException
指定した待ち時間 (ミリ秒単位) をもつ SO_TIMEOUT を有効または無効にします。このオプションの待ち時間をゼロ以外の値に設定して、この DatagramSocket の receive() を呼び出すと、メソッドは指定した時間が経過するまで戻りません。待ち時間が経過すると java.io.InterruptedIOException が発生します。ただし、ServerSocket は有効なままです。このオプションに効果をもたせるためには、ブロック操作に入る前にこのオプションを有効にしなければなりません。待ち時間にはゼロより大きい値を指定します。待ち時間にゼロを指定すると、無限と解釈されます。

 o getSoTimeout
  public synchronized int getSoTimeout() throws SocketException
SO_TIMEOUT の設定を取得します。このオプションが無効 (待ち時間が無限) の場合は、0 が返されます。

 o close
  public void close()
このデータグラムソケットをクローズします。


全パッケージ  クラス階層  このパッケージ  前項目  次項目  インデックス