我讓我的遊戲在多人遊戲和單人遊戲中表現相同。做到這一點,我們必須在用戶的計算機上播放單人遊戲時託管服務器。如何使用Java在本地主機上創建服務器?難道就這麼簡單:客戶端和服務器使用同一臺機器
echoSocket = new Socket(localhost, 1234);
我讓我的遊戲在多人遊戲和單人遊戲中表現相同。做到這一點,我們必須在用戶的計算機上播放單人遊戲時託管服務器。如何使用Java在本地主機上創建服務器?難道就這麼簡單:客戶端和服務器使用同一臺機器
echoSocket = new Socket(localhost, 1234);
是的,這就是:
java.net.ServerSocket serverSocket = new java.net.ServerSocket(port);
while(true){
java.net.Socket socket = serverSocket.accept();
// do something
// If you want to handle multiple connections at a time,
// you will have to create a Thread for each socket.
}
編輯:如果你希望你的服務器只監聽本地主機(所以沒有其他計算機可以連接),你會寫:
java.net.ServerSocket serverSocket = new java.net.ServerSocket(port);
serverSocket.bind(new java.net.InetSocketAddress("localhost", port));
我只是添加一些手動檢查,以確保其他計算機沒有連接;正確? – TheNickmaster21
非常感謝你!' – TheNickmaster21
你檢查了[this](http://www.cise.ufl.edu/~amyles/tutorials/tcpchat/)了嗎? – rfoo
非常酷的教程! – TheNickmaster21