ホームページ >Java >&#&チュートリアル >JavaのSocketのメソッドと機能を詳しく解説
1.java.net.Socket; ソケットは TCP 通信プロトコルをカプセル化し、TCP に基づいてリモート コンピューター上のサーバー アプリケーションと接続して通信するために使用できます。
ソケットのインスタンス化は、サーバーとの接続を確立するプロセスです。ここでは、サーバー アドレス情報を指定するために 2 つのパラメーターを渡す必要があります:
パラメーター 1: サーバー コンピューターのアドレス
パラメーター 2: サーバー コンピューター上で実行されているサーバー アプリケーションによって開かれたサービス ポート
サーバー コンピューターは IP 経由で見つけることができます。ポートを使用して、サーバー端末上で実行されているサーバー アプリケーションに接続できます。インスタンス化は接続プロセスであるため、サーバーが応答すると、ここで Socket をインスタンス化すると例外がスローされます。
Socket は次のメソッドを提供します:
OutputStream getOutputStream()
Socket を通じて取得された入力ストリームから書き込まれたバイトは、ネットワークを通じてリモート コンピューターに送信されます。これはサーバーに送信することと同じです。
2. サーバー上で実行される java.net.ServerSocket;
主に 2 つの機能があります:
1. 外部サービス ポートをシステムに適用し、クライアント ソケットはこのポートを介してサーバー プログラムとの接続を確立します。
2. サービス ポートをリッスンします。クライアント Socket がこのポート経由で接続を確立しようとすると、serverSocket が感知して、クライアントと通信するための Socket をインスタンス化します。
ServerSocket が提供するメソッド:
Socket accept()
このメソッドは、クライアントが接続するまでサービス ポートをリッスンするために使用されるブロック メソッドです。ここでソケットが返され、それを通じてクライアントと通信できます。
Socket を介して入力ストリームを取得し、読み取られるデータはリモート コンピューターから送信されたデータです。これは、読み取り時にクライアントによって送信されたデータと同等です。
InputStream in = socket.getInputStream();
バッファ ストリームを使用してクライアントから送信された文字列を読み取る場合、クライアントが切断されるまで br.readLine メソッドはブロックされます。クライアントシステムによって異なります。 Windows クライアントが切断されると、メソッドは例外をスローします。Linux クライアントが切断されると、メソッドは null を返します。
以上がJavaのSocketのメソッドと機能を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。