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

クラス java.net.Socket

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

public class Socket
extends Object
このクラスはクライアントソケット (単に「ソケット」とも呼ぶ) を実装します。ソケットとは 2 つのマシン間の通信の終点に位置するものです。

ソケットの実際の処理は SocketImpl クラスのインスタンスによって行われます。アプリケーションはソケットを作成するソケットファクトリを変更することによって、ローカルのファイアウォールに適したソケットを作成するように、アプリケーション自身を構成することができます。

参照:
setSocketImplFactory, SocketImpl

Constructor Index

 o Socket()
システムデフォルト型の SocketImpl を使用して、無接続のソケットを作成する。
 o Socket(InetAddress, int)
ストリームソケットを作成し、指定の IP アドレスの指定のポート番号に接続する。
 o Socket(InetAddress, int, boolean)
ソケットを作成し、指定の IP アドレスの指定のポート番号に接続する。 推奨されない API。
 o Socket(InetAddress, int, InetAddress, int)
ソケットを作成し、指定のリモートポート上の指定のリモートアドレスに接続する。
 o Socket(SocketImpl)
ユーザーが指定した SocketImpl を使用して無接続のソケットを作成する。
 o Socket(String, int)
ストリームソケットを作成し、指定のホスト上の指定のポート番号に接続する。
 o Socket(String, int, boolean)
ストリームソケットを作成し、指定のホスト上の指定のポート番号に接続する。 推奨されない API。
 o Socket(String, int, InetAddress, int)
ソケットを作成し、指定したリモートポート上の指定のリモートホストに接続する。

Method Index

 o close()
このソケットをクローズする。
 o getInetAddress()
このソケットの接続先のアドレスを返す。
 o getInputStream()
このソケットの入力ストリームを返す。
 o getLocalAddress()
ソケットの結合先のローカルアドレスを取得する。
 o getLocalPort()
このソケットの結合先のローカルポートを返す。
 o getOutputStream()
このソケットの出力ストリームを返す。
 o getPort()
このソケットの接続先のリモートポートを返す。
 o getSoLinger()
SO_LINGER の設定を返す。
 o getSoTimeout()
SO_TIMEOUT の設定を返す。
 o getTcpNoDelay()
TCP_NODELAY が有効かどうかをテストする。
 o setSocketImplFactory(SocketImplFactory)
アプリケーションのクライアントソケット実装ファクトリを設定する。
 o setSoLinger(boolean, int)
指定した残り時間を使用して SO_LINGER を有効または無効にする。
 o setSoTimeout(int)
指定した待ち時間 (ミリ秒単位) を使用して SO_TIMEOUT を有効または無効にする。
 o setTcpNoDelay(boolean)
TCP_NODELAY (Nagle のアルゴリズム)を有効または無効にする。
 o toString()
このソケットを String に変換する。

Constructors

 o Socket
  protected Socket()
システムデフォルト型の SocketImpl を使用して無接続のソケットを作成します。

 o Socket
  protected Socket(SocketImpl impl) throws SocketException
ユーザーが指定した SocketImpl を使用して無接続のソケットを作成します。

impl パラメータにはサブクラスがソケット上で使用する SocketImpl のインスタンスを指定します。

 o Socket
  public Socket(String host,
                int port) throws UnknownHostException, IOException
ストリームソケットを作成し、指定したホスト上の指定のポート番号に接続します。

アプリケーションでサーバソケットファクトリを指定していれば、そのファクトリの createSocketImpl メソッドが呼び出され、実際のソケットが作成されます。それ以外の場合は普通のソケットが作成されます。

パラメータ:
host - ホスト名
port - ポート番号
例外 : IOException
ソケットの作成中に I/O エラーが発生した
参照:
setSocketImplFactory, SocketImpl, createSocketImpl
 o Socket
  public Socket(InetAddress address,
                int port) throws IOException
ストリームソケットを作成し、指定した IP アドレスの指定のポート番号に接続します。

アプリケーションでサーバソケットファクトリを指定していれば、そのファクトリの createSocketImpl メソッドが呼び出され、実際のソケットが作成されます。それ以外の場合は普通のソケットが作成されます。

パラメータ:
address - IP アドレス
port - ポート番号
例外 : IOException
ソケットの作成中に I/O エラーが発生した
参照:
setSocketImplFactory, SocketImpl, createSocketImpl
 o Socket
  public Socket(String host,
                int port,
                InetAddress localAddr,
                int localPort) throws IOException
ソケットを作成し、指定したリモートポート上にある指定のリモートホストに接続します。ソケットは指定したローカルアドレスとポートに結合されます。

パラメータ:
host - リモートホスト名
port - リモートポート
localAddr - ソケットの結合先のローカルアドレス
localPort - ソケットの結合先のローカルポート
 o Socket
  public Socket(InetAddress address,
                int port,
                InetAddress localAddr,
                int localPort) throws IOException
ソケットを作成し、指定したリモートポート上にある指定のリモートアドレスに接続します。ソケットは指定したローカルアドレスとポートに結合されます。

パラメータ:
address - リモートアドレス
port - リモートポート
localAddr - ソケットの結合先のローカルアドレス
localPort - ソケットの結合先のローカルポート
 o Socket
  public Socket(String host,
                int port,
                boolean stream) throws IOException
注意: Socket() は推奨されない API です。 UDP トランスポートには DatagramSocket を使用してください。

ストリームソケットを作成し、指定したホスト上にある指定のポート番号に接続します。

stream 引数に true を指定すると、ストリームソケットが作成されます。stream 引数に false を指定すると、データグラムソケットが作成されます。

アプリケーションでサーバソケットファクトリを指定している場合は、そのファクトリの createSocketImpl メソッドが呼び出され、実際のソケットが作成されます。それ以外の場合は「普通の」ソケットが作成されます。

パラメータ:
host - ホスト名
port - ポート番号
stream - ストリームソケットかデータグラムソケットかを表わす boolean
例外 : IOException
ソケットの作成中に I/O エラーが発生した
参照:
setSocketImplFactory, SocketImpl, createSocketImpl
 o Socket
  public Socket(InetAddress host,
                int port,
                boolean stream) throws IOException
注意: Socket() は推奨されない API です。 UDP トランスポートには DatagramSocket を使用してください。

ソケットを作成し、指定の IP アドレスにある指定のポート番号に接続します。

stream 引数に true を指定すると、ストリームソケットが作成されます。stream 引数に false を指定すると、データグラムソケットが作成されます。

アプリケーションでサーバソケットファクトリを指定している場合は、そのファクトリの createSocketImpl メソッドが呼び出され、実際のソケットが作成されます。それ以外の場合は「普通の」ソケットが作成されます。

パラメータ:
address - IP アドレス
port - ポート番号
stream - true を指定するとストリームソケットが作成され、それ以外の場合はデータグラムソケットが作成される
例外 : IOException
ソケットの作成中に I/O エラーが発生した
参照:
setSocketImplFactory, SocketImpl, createSocketImpl

Methods

 o getInetAddress
  public InetAddress getInetAddress()
ソケットの接続先のアドレスを返します。

返り値:
ソケットの接続先のリモート IP アドレス
 o getLocalAddress
  public InetAddress getLocalAddress()
ソケットの結合先のローカルアドレスを取得します。

 o getPort
  public int getPort()
このソケットの接続先のリモートポートを返します。

返り値:
このソケットの接続先のリモートポート番号
 o getLocalPort
  public int getLocalPort()
このソケットの結合先のローカルポートを返します。

返り値:
このソケットの結合先のローカルポート番号
 o getInputStream
  public InputStream getInputStream() throws IOException
このソケットの入力ストリームを返します。

返り値:
このソケットからバイトを読み込むための入力ストリーム
例外 : IOException
入力ストリームの作成中に I/O エラーが発生した
 o getOutputStream
  public OutputStream getOutputStream() throws IOException
このソケットの出力ストリームを返します。

返り値:
このソケットにバイトを書き込むための出力ストリーム
例外 : IOException
出力ストリームの作成中に I/O エラーが発生した
 o setTcpNoDelay
  public void setTcpNoDelay(boolean on) throws SocketException
TCP_NODELAY (Nagle のアルゴリズム) を有効または無効にします。

 o getTcpNoDelay
  public boolean getTcpNoDelay() throws SocketException
TCP_NODELAY が有効かどうかをテストします。

 o setSoLinger
  public void setSoLinger(boolean on,
                          int val) throws SocketException
指定した残り時間を使用して SO_LINGER を有効または無効にします。

 o getSoLinger
  public int getSoLinger() throws SocketException
SO_LINGER の設定を返します。このオプションが無効になっている場合は -1 を返します。

 o setSoTimeout
  public synchronized void setSoTimeout(int timeout) throws SocketException
指定した待ち時間 (ミリ秒単位) を使用して SO_TIMEOUT を有効または無効にします。このオプションにゼロ以外の待ち時間を設定して、この Socket に関連付けられている InputStream に対して read() を呼び出すと、設定した時間だけブロックされます。待ち時間が経過すると、Socket は有効なまま java.io.InterruptedIOException が発生します。このオプションに効果をもたせるためには、ブロック操作に入る前にこのオプションを有効にしておく必要があります。待ち時間にはゼロより大きい値を指定します。待ち時間にゼロを指定すると、待ち時間は無限と解釈されます。

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

 o close
  public synchronized void close() throws IOException
このソケットをクローズします。

例外 : IOException
このソケットをクローズしようとして I/O エラーが発生した
 o toString
  public String toString()
このソケットを String に変換します。

返り値:
このソケットの文字列表現
オーバーライド:
Object クラスの toString
 o setSocketImplFactory
  public static synchronized void setSocketImplFactory(SocketImplFactory fac) throws IOException
アプリケーションのクライアントソケット実装ファクトリを設定します。ファクトリを設定できるのは 1 回だけです。

アプリケーションで新しいクライアントソケットを作成すると、ソケット実装ファクトリの createSocketImpl メソッドが呼び出され、実際のソケットが作成されます。

パラメータ:
fac - 使用するファクトリ
例外 : IOException
ソケットファクトリの設定中に I/O エラーが発生した
例外 : SocketException
ファクトリがすでに定義されている
参照:
createSocketImpl

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