全國計算機等級考試Java語言程序設計輔導(88)
中華IT學院 【
大 中 小】 [ 2016年3月11日 ]
套接字使用TCP提供了兩臺計算機之間的通信機制。 客戶端程序創(chuàng)建一個套接字,并嘗試連接服務器的套接字。
當連接建立時,服務器會創(chuàng)建一個Socket對象。客戶端和服務器現(xiàn)在可以通過對Socket對象的寫入和讀取來進行進行通信。
java.net.Socket類代表一個套接字,并且java.net.ServerSocket類為服務器程序提供了一種來監(jiān)聽客戶端,并與他們建立連接的機制。
以下步驟在兩臺計算機之間使用套接字建立TCP連接時會出現(xiàn):
- 服務器實例化一個ServerSocket對象,表示通過服務器上的端口通信。
- 服務器調用 ServerSocket類 的accept()方法,該方法將一直等待,直到客戶端連接到服務器上給定的端口。
- 服務器正在等待時,一個客戶端實例化一個Socket對象,指定服務器名稱和端口號來請求連接。
- Socket類的構造函數(shù)試圖將客戶端連接到指定的服務器和端口號。如果通信被建立,則在客戶端創(chuàng)建一個Socket對象能夠與服務器進行通信。
- 在服務器端,accept()方法返回服務器上一個新的socket引用,該socket連接到客戶端的socket。
連接建立后,通過使用I/O流在進行通信。每一個socket都有一個輸出流和一個輸入流?蛻舳说妮敵隽鬟B接到服務器端的輸入流,而客戶端的輸入流連接到服務器端的輸出流。
TCP是一個雙向的通信協(xié)議,因此數(shù)據(jù)可以通過兩個數(shù)據(jù)流在同一時間發(fā)送.以下是一些類提供的一套完整的有用的方法來實現(xiàn)sockets。
免責申明 --------------------------------------------------------------------------------------
以上內(nèi)容僅代表原創(chuàng)者觀點,其內(nèi)容未經(jīng)本站證實,中華考試網(wǎng)對以上內(nèi)容的真實性、完整性不作任何保證或承諾,轉載目的在于傳遞更多信息,由此產(chǎn)生的后果與中華考試網(wǎng)無關;如以上轉載內(nèi)容不慎侵犯了您的權益,請聯(lián)系我們
,我們將會及時處理。