|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object java.net.SocketImpl
public abstract class SocketImpl
抽象クラス SocketImpl
は、ソケットを実際に実装するすべてのクラスに共通のスーパークラスです。クライアントソケットとサーバソケットの両方を作成する際に使用されます。
「プレーンな」ソケットは、各メソッドを記述のとおりに実装します。ファイアウォールやプロキシは使用しません。
フィールドの概要 | |
---|---|
protected InetAddress |
address
このソケットのリモート側の IP アドレスです。 |
protected FileDescriptor |
fd
このソケットのファイル記述子オブジェクトです。 |
protected int |
localport
このソケットの接続先のローカルポート番号です。 |
protected int |
port
このソケットの接続先のリモートホスト上にあるポート番号です。 |
インタフェース 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 |
コンストラクタの概要 | |
---|---|
SocketImpl()
|
メソッドの概要 | |
---|---|
protected abstract void |
accept(SocketImpl s)
接続を受け入れます。 |
protected abstract int |
available()
このソケットからブロックなしで読み取れるバイト数を返します。 |
protected abstract void |
bind(InetAddress host,
int port)
このソケットを指定されたローカル IP アドレスとポート番号にバインドします。 |
protected abstract void |
close()
このソケットを閉じます。 |
protected abstract void |
connect(InetAddress address,
int port)
指定されたホスト上の指定されたポートにこのソケットを接続します。 |
protected abstract void |
connect(SocketAddress address,
int timeout)
指定されたホストの指定されたポート番号にこのソケットを接続します。 |
protected abstract void |
connect(String host,
int port)
指定されたホスト上の指定されたポートにこのソケットを接続します。 |
protected abstract void |
create(boolean stream)
ストリームソケットまたはデータグラムソケットを作成します。 |
protected FileDescriptor |
getFileDescriptor()
このソケットの fd フィールド値を返します。 |
protected InetAddress |
getInetAddress()
このソケットの address フィールド値を返します。 |
protected abstract InputStream |
getInputStream()
このソケットの入力ストリームを返します。 |
protected int |
getLocalPort()
このソケットの localport フィールド値を返します。 |
protected abstract OutputStream |
getOutputStream()
このソケットの出力ストリームを返します。 |
protected int |
getPort()
このソケットの port フィールド値を返します。 |
protected abstract void |
listen(int backlog)
受信する接続 (接続要求) を入れるキューの最大長を、 count 引数の値に設定します。 |
protected abstract void |
sendUrgentData(int data)
ソケット上の 1 バイトの緊急データを送信します。 |
protected void |
setPerformancePreferences(int connectionTime,
int latency,
int bandwidth)
このソケットのパフォーマンス設定を行います。 |
protected void |
shutdownInput()
このソケットの入力ストリームを「ストリームの最後」に配置します。 |
protected void |
shutdownOutput()
このソケットの出力ストリームを無効にします。 |
protected boolean |
supportsUrgentData()
この SocketImpl が緊急データの送信をサポートしているかどうかを返します。 |
String |
toString()
このソケットのアドレスとポートを String として返します。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
インタフェース java.net.SocketOptions から継承されたメソッド |
---|
getOption, setOption |
フィールドの詳細 |
---|
protected FileDescriptor fd
protected InetAddress address
protected int port
protected int localport
コンストラクタの詳細 |
---|
public SocketImpl()
メソッドの詳細 |
---|
protected abstract void create(boolean stream) throws IOException
stream
- true
を指定した場合はストリームソケットが作成され、そうでない場合はデータグラムソケットが作成される
IOException
- ソケットの作成中に入出力エラーが発生した場合protected abstract void connect(String host, int port) throws IOException
host
- リモートホスト名port
- ポート番号
IOException
- リモートホストへの接続中に入出力エラーが発生した場合protected abstract void connect(InetAddress address, int port) throws IOException
address
- リモートホストの IP アドレスport
- ポート番号
IOException
- 接続の試行中に入出力エラーが発生した場合protected abstract void connect(SocketAddress address, int timeout) throws IOException
address
- リモートホストのソケットアドレスtimeout
- タイムアウト値 (ミリ秒)。タイムアウトなしの場合は 0
IOException
- 接続の試行中に入出力エラーが発生した場合protected abstract void bind(InetAddress host, int port) throws IOException
host
- ローカルインタフェースに所属する IP アドレスport
- ポート番号
IOException
- このソケットをバインドするときに入出力エラーが発生した場合protected abstract void listen(int backlog) throws IOException
count
引数の値に設定します。キューが埋まっているときに接続要求があると、接続は拒否されます。
backlog
- キューの最大長
IOException
- キューの作成中に入出力エラーが発生した場合protected abstract void accept(SocketImpl s) throws IOException
s
- 受け入れる接続
IOException
- 接続の受け入れ中に入出力エラーが発生した場合protected abstract InputStream getInputStream() throws IOException
IOException
- 入力ストリームの作成中に入出力エラーが発生した場合protected abstract OutputStream getOutputStream() throws IOException
IOException
- 出力ストリームの作成中に入出力エラーが発生した場合protected abstract int available() throws IOException
IOException
- 利用できるバイト数の決定時に入出力エラーが発生した場合protected abstract void close() throws IOException
IOException
- このソケットを閉じるときに入出力エラーが発生した場合protected void shutdownInput() throws IOException
IOException
- このソケットを停止するときに入出力エラーが発生した場合Socket.shutdownOutput()
,
Socket.close()
,
Socket.setSoLinger(boolean, int)
protected void shutdownOutput() throws IOException
IOException
- このソケットを停止するときに入出力エラーが発生した場合Socket.shutdownInput()
,
Socket.close()
,
Socket.setSoLinger(boolean, int)
protected FileDescriptor getFileDescriptor()
fd
フィールド値を返します。
fd
フィールド値fd
protected InetAddress getInetAddress()
address
フィールド値を返します。
address
フィールド値address
protected int getPort()
port
フィールド値を返します。
port
フィールド値port
protected boolean supportsUrgentData()
address
protected abstract void sendUrgentData(int data) throws IOException
data
- 送信するデータのバイト
IOException
- データを送信するときにエラーが発生した場合protected int getLocalPort()
localport
フィールド値を返します。
localport
フィールド値localport
public String toString()
String
として返します。
Object
内の toString
protected void setPerformancePreferences(int connectionTime, int latency, int bandwidth)
ソケットはデフォルトで TCP/IP プロトコルを使用します。実装によっては、TCP/IP とは異なるパフォーマンス特性を持つ代替プロトコルが提供されることもあります。アプリケーションは、このメソッドを使用することで、実装で利用可能なプロトコルの選択時に、これらのかね合いの取り方を示す独自の設定を表現できます。
パフォーマンス設定は、接続時間の短さ、応答時間の速さ、帯域幅の広さの相対的な重要度を示す 3 つの整数値によって記述されます。整数の絶対値に関係性はなく、プロトコルを選択するために値を単に比較します。値が大きければより強い設定を示します。負の値は、正の値よりも優先順位が低いことを表します。アプリケーションが応答時間の速さと帯域幅の広さよりも接続時間の短さを優先する場合、このメソッドを (1, 0, 0) という値で呼び出すことができます。アプリケーションが応答時間の速さよりも帯域幅の広さを、また接続時間の短さよりも応答時間の速さを優先する場合、このメソッドを (0, 1, 2) という値で呼び出すことができます。 デフォルトでは、サブクラスでオーバーライドされていないかぎり、このメソッドは何も行いません。
connectionTime
- 接続時間の短さの相対的な重要度を表す intlatency
- 応答時間の速さの相対的な重要度を表す intbandwidth
- 帯域幅の広さの相対的な重要度を表す int
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。