ネットワークプログラミングの 3 つの要素
static InetAddress[] |
getAllByName(文字列ホスト)
指定されたホスト名の場合、システム上で提供されるネーム サービスに従って、その IP アドレスで構成される配列が返されます。
|
static InetAddress
| getByAddress
(byte[] addr)
P 指定された元の IP アドレスの場合は、INETADDRESS オブジェクトを返します。
static InetAddress
|
getByAddress (String host, byte[] addr)
️指定されたホスト名と IP アドレスに基づいて InetAddress を作成します。 |
static InetAddress
| getByName
(文字列ホスト)
️から出てきます。
|
getByName("ホスト名(繰り返し可能)/文字列のIPアドレス "): 他のマシンのIPアドレス文字列を使用してInetAddressオブジェクトを生成します ()
|
ローカルホストに戻ります。
|
String |
getHostAddress ()
− 。
|
String |
getHostName()
この IP アドレスのホスト名を取得します。
|
データグラムSocket () |
データグラムソケットを構築し、ローカルにバインドします。ホスト上で使用可能なポート。
void |
close ()
このデータグラムソケットを閉じます。
|
void |
send(DatagramPacket p)
️このソケットからデータグラム パケットを送信します。
パラメータ:
p - 送信されるDatagramPacket。
|
クラス DatagramPacket
-
このクラスはデータグラムパケットを表します
構築メソッド
| データグラムパケット
(byte[] buf、int長、InetAddressアドレス、intポート)
データグラム パケットを構築して、指定されたホスト上の指定されたポート番号に長さ length のパケットを送信します。
パラメータ:
buf - パケットデータ。
length - パッケージの長さ。
アドレス - 宛先アドレス。
port - 宛先ポート番号。
TCPプロトコル
-
Cl ient_Socket クラス
このクラスはクライアントソケット(「ソケット」とも呼ばれます)を実装します")。ソケットは、2 つのマシン間の通信のエンドポイントです。
構築方法
送信されるデータはIOフローに基づいています
送信されるデータのサイズ制限はありません
ウェイハンドシェイクメカニズム、へデータの整合性を確保します
サーフェス接続のため、速度が遅いです
TCPプロトコルはクライアントとサーバーに分かれています
TCPプロトコルの特徴
-
関係するクラス
|
Socket(InetAddressアドレス、intポート)
ストリームソケットを作成し、指定された IP アドレスの指定されたポート番号に接続します。
パラメータ:
address - IP アドレス。
ポート - ポート番号。
|
InputStream |
getInputStream ()
このソケットの入力ストリームを返します。
|
OutputStream |
getOutputStream()
このソケットの出力ストリームを返します。
|
|
ServerSocket(intポート)
特定のポートにバインドされたサーバーソケットを作成します。
パラメータ:
port - ポート番号、または 0。空いているポートを使用することを意味します。
|
Socket |
accept ()
このソケットへの接続をリッスンして受け入れます。
質問:
なぜServerSocketにはgetOutputStreamに相当するメソッドがないのですか?
サーバーは複数のクライアントに接続されているため、混乱を避けるために各クライアントと通信することでソケットを確立しますgetOutputStream および getInputStream オペレーションを実行するための端です
|
|
|
|
以上がネットワークプログラミングの具体的な手順を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。