java.lang.Object
javax.net.SocketFactory
- 直系の既知のサブクラス:
SSLSocketFactory
public abstract class SocketFactory extends Object
このクラスは、ソケットを作成します。 このクラスを別のファクトリのサブクラスに入れると、特定の種類のソケットが作成され、ソケット・レベルのpublic機能を追加するための汎用的なフレームワークが提供されます。
ソケット・ファクトリを使うと、構築するソケットに関する一連のポリシーを簡単に取得し、ソケットを要求する特別なコード構成を必要としない方法でソケットを作成できます。
- ファクトリとソケットに多相性があるため、同一アプリケーション・コードに種類の異なるファクトリを渡すだけで、そのコードでそれらのソケットを使用できる。
- ソケット構築時に使用するパラメータを使って、ファクトリ自身をカスタマイズできます。 たとえば、ファクトリをカスタマイズして、異なるネットワーク・タイムアウトのソケットや、構成済みのセキュリティ・パラメータを返すことができます。
- アプリケーションに返されるソケットをjava.net.Socketのサブクラスにすると、圧縮、セキュリティ、レコードのマーク付け、統計の収集、およびファイアウォールのトンネルなどの機能を、新しいAPIから直接使用できる。
ファクトリ・クラスは、環境固有の構成メカニズムによって指定されます。 たとえば、getDefaultメソッドは、特定のユーザーまたはアプレットに適したファクトリを返すことができます。また、フレームワークは、特定の目的に合わせてカスタマイズされたファクトリを使用できます。
- 導入されたバージョン:
- 1.4
- 関連項目:
ServerSocketFactory
-
コンストラクタのサマリー
コンストラクタ 修飾子 コンストラクタ 説明 protected
SocketFactory()
SocketFactory
を作成します。 -
メソッドのサマリー
修飾子と型 メソッド 説明 Socket
createSocket()
接続されていないソケットを作成します。abstract Socket
createSocket(String host, int port)
ソケットを作成し、指定されたリモート・ポート上の指定されたリモート・ホストに接続します。abstract Socket
createSocket(String host, int port, InetAddress localHost, int localPort)
ソケットを作成し、指定されたリモート・ポート上の指定されたリモート・ホストに接続します。abstract Socket
createSocket(InetAddress host, int port)
ソケットを作成し、指定されたアドレスの指定されたポート番号に接続します。abstract Socket
createSocket(InetAddress address, int port, InetAddress localAddress, int localPort)
ソケットを作成し、指定されたリモート・ポート上の指定されたリモート・アドレスに接続します。static SocketFactory
getDefault()
環境にデフォルトで提供されるソケット・ファクトリのコピーを返します。
-
コンストラクタの詳細
-
SocketFactory
protected SocketFactory()SocketFactory
を作成します。
-
-
メソッドの詳細
-
getDefault
public static SocketFactory getDefault()環境にデフォルトで提供されるソケット・ファクトリのコピーを返します。- 戻り値:
- デフォルトの
SocketFactory
-
createSocket
public Socket createSocket() throws IOException接続されていないソケットを作成します。- 戻り値:
- 接続されていないソケット
- 例外:
IOException
- ソケットを作成できない場合- 関連項目:
Socket.connect(java.net.SocketAddress)
,Socket.connect(java.net.SocketAddress, int)
,Socket()
-
createSocket
public abstract Socket createSocket(String host, int port) throws IOException, UnknownHostExceptionソケットを作成し、指定されたリモート・ポート上の指定されたリモート・ホストに接続します。 ソケットは、このファクトリに設定されているソケット・オプションを使用して構成されます。セキュリティ・マネージャが存在する場合、その
checkConnect
メソッドが、ホスト・アドレスとport
を引数に指定して呼び出されます。 この結果、SecurityExceptionがスローされることがあります。- パラメータ:
host
- 接続先のサーバー・ホスト名、またはループバック・アドレスの場合はnull
。port
- サーバー・ポート- 戻り値:
Socket
- 例外:
IOException
- ソケットの作成時に入出力エラーが発生した場合SecurityException
- セキュリティ・マネージャが存在し、そのcheckConnect
メソッドでこの操作が許可されていない場合。UnknownHostException
- ホストが不明である場合IllegalArgumentException
- portパラメータが指定された有効なポート値の範囲(0から65535)外である場合。- 関連項目:
SecurityManager.checkConnect(java.lang.String, int)
,Socket(String, int)
-
createSocket
public abstract Socket createSocket(String host, int port, InetAddress localHost, int localPort) throws IOException, UnknownHostExceptionソケットを作成し、指定されたリモート・ポート上の指定されたリモート・ホストに接続します。 このソケットは、指定されたローカル・アドレスとポートにバインドされます。 ソケットは、このファクトリに設定されているソケット・オプションを使用して構成されます。セキュリティ・マネージャが存在する場合、その
checkConnect
メソッドが、ホスト・アドレスとport
を引数に指定して呼び出されます。 この結果、SecurityExceptionがスローされることがあります。- パラメータ:
host
- 接続先のサーバー・ホスト名、またはループバック・アドレスの場合はnull
。port
- サーバー・ポートlocalHost
- ソケットのバインド先のローカル・アドレスlocalPort
- ソケットのバインド先のローカル・ポート- 戻り値:
Socket
- 例外:
IOException
- ソケットの作成時に入出力エラーが発生した場合SecurityException
- セキュリティ・マネージャが存在し、そのcheckConnect
メソッドでこの操作が許可されていない場合。UnknownHostException
- ホストが不明である場合IllegalArgumentException
- portパラメータまたはlocalPortパラメータが指定された有効なポート値の範囲(0から65535)外である場合。- 関連項目:
SecurityManager.checkConnect(java.lang.String, int)
,Socket(String, int, java.net.InetAddress, int)
-
createSocket
public abstract Socket createSocket(InetAddress host, int port) throws IOExceptionソケットを作成し、指定されたアドレスの指定されたポート番号に接続します。 ソケットは、このファクトリに設定されているソケット・オプションを使用して構成されます。セキュリティ・マネージャが存在する場合、その
checkConnect
メソッドが、ホスト・アドレスとport
を引数に指定して呼び出されます。 この結果、SecurityExceptionがスローされることがあります。- パラメータ:
host
- サーバー・ホストport
- サーバー・ポート- 戻り値:
Socket
- 例外:
IOException
- ソケットの作成時に入出力エラーが発生した場合SecurityException
- セキュリティ・マネージャが存在し、そのcheckConnect
メソッドでこの操作が許可されていない場合。IllegalArgumentException
- portパラメータが指定された有効なポート値の範囲(0から65535)外である場合。NullPointerException
-host
がnullである場合。- 関連項目:
SecurityManager.checkConnect(java.lang.String, int)
,Socket(java.net.InetAddress, int)
-
createSocket
public abstract Socket createSocket(InetAddress address, int port, InetAddress localAddress, int localPort) throws IOExceptionソケットを作成し、指定されたリモート・ポート上の指定されたリモート・アドレスに接続します。 このソケットは、指定されたローカル・アドレスとポートにバインドされます。 ソケットは、このファクトリに設定されているソケット・オプションを使用して構成されます。セキュリティ・マネージャが存在する場合、その
checkConnect
メソッドが、ホスト・アドレスとport
を引数に指定して呼び出されます。 この結果、SecurityExceptionがスローされることがあります。- パラメータ:
address
- サーバーのネットワーク・アドレスport
- サーバー・ポートlocalAddress
- クライアントのネットワーク・アドレスlocalPort
- クライアント・ポート- 戻り値:
Socket
- 例外:
IOException
- ソケットの作成時に入出力エラーが発生した場合SecurityException
- セキュリティ・マネージャが存在し、そのcheckConnect
メソッドでこの操作が許可されていない場合。IllegalArgumentException
- portパラメータまたはlocalPortパラメータが指定された有効なポート値の範囲(0から65535)外である場合。NullPointerException
-address
がnullである場合。- 関連項目:
SecurityManager.checkConnect(java.lang.String, int)
,Socket(java.net.InetAddress, int, java.net.InetAddress, int)
-