基於TCP/IP的手機聊天遊戲(附帶原始碼和解釋)之共享類
宣告:
這是一個Client基於J2ME以及TCP/IP協議的簡單的聊天程式,在本人模擬器上測試沒問題,但並不保證真機上會出現問題。
程式碼以及整個遊戲框架你可以拿來自由使用,但請註明出處。
(一)
這部分是程式Cilent端和Server端共用的一些類,之所以把它們拿出來單獨寫,是為了讓整個程式的框架更清晰。
其實也就一個類、一個介面,但思想是一樣的,或許你需要更多的類來讓Client和Server共用,舉個例子來說:如果你採用了“髒矩形技術”,那麼可以把每個Item、每個Frame做個共享類放在這裡。
Server介面:
public interface Server {
public static final int PORT = 8042;
}
這個介面裡很簡單,之定義了一個埠號,以便於以後的程式修改和維護。
Message類:
聽其名字就知道了,這個是訊息類,因為無論是Client端還是Server端,其訊息是能抽象出很多相似的東西的。
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
public class Message {
public static final int NO_VALUE = -1;
public static final int SIGNUP = 0;
public static final int SIGNUP_ACK = 1;
public static final int CLIENT_STATUS = 2;
public static final int SERVER_STATUS = 3;
public static final int ERROR = 4;
public static final int SIGNOFF = 5;
private int type;
private String str;
public static int player_id;
public Message(int type,int player_id,String str) {
this.type = type;
Message.player_id = player_id;
this.str = str;
}
public int getType() {
return type;
}
public String getStr(){
return str;
}
public void archive(DataOutputStream out) throws IOException {
out.writeInt(type);
out.writeInt(player_id);
out.writeUTF(str);
out.flush();
System.out.println("***Client has send :"+type);
}
public static Message createFromStream(DataInputStream in) throws IOException {
Message msg = new Message(in.readInt(), in.readInt(),in.readUTF());
return msg;
}
public String toString() {
return "Message: type # = " + type + ", player_id = "
+ player_id+", content = "+str;
}
}
因為我們只是實現了簡單的聊天功能,只是傳送簡單的字元給Server端,然後讓其傳送到各個Client端,因此功能比較簡單,目的也僅僅用於學習,但你可以在此功能上增加更多的功能。
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=775420
相關文章
- 基於TCP/IP的手機聊天遊戲(附帶原始碼和解釋)之客戶端類TCP遊戲原始碼客戶端
- 基於TCP/IP的手機聊天遊戲(附帶原始碼和解釋)之伺服器端類TCP遊戲原始碼伺服器
- 【基於OpenAI的ChatGPT】搭建屬於自己的微信聊天機器人(附帶註冊英國手機號碼方式)OpenAIChatGPT機器人
- 基於Nodejs的Tcp封包和解包NodeJSTCP
- canal原始碼之BooleanMutex(基於AQS中共享鎖實現)原始碼BooleanMutexAQS
- Python基於TCP實現聊天功能PythonTCP
- C++ 實現基於TCP的聊天室C++TCP
- 使用Xamarin開發手機聊天程式 -- 基礎篇(大量圖文講解 step by step,附原始碼下載)原始碼
- 分散式應用開發的核心技術系列之——基於TCP/IP的原始訊息設計分散式TCP
- 【TCP/IP】TCP伺服器併發處理&原始碼TCP伺服器原始碼
- TCP/IP原始碼學習(23)——tcp_sendmsg(2)TCP原始碼
- TCP/IP 基礎TCP
- 【TCP/IP】IP地址的劃分及其分類TCP
- 面試之TCP/IP面試TCP
- TCP/IP之TCP的建立與終止TCP
- 基於Java的Socket類Tcp網路程式設計實現實時聊天互動程式(一):QQ聊天介面的搭建JavaTCP程式設計
- 【TCP/IP】IP地址分類和特殊IP地址TCP
- Vue 版消消樂小遊戲(pc/手機皆可線上體驗,附原始碼)Vue遊戲原始碼
- TCP/IP基礎知識&Oracle的TCP/IP網路應用TCPOracle
- 一個手機上的網路聊天遊戲(圖)遊戲
- TCP/IP模型的簡單解釋TCP模型
- Java打飛機小遊戲(附完整原始碼)Java遊戲原始碼
- [原始碼和文件分享]基於VC++的MFC類庫的飛機大戰遊戲的設計與實現原始碼C++遊戲
- 通俗理解這次的CPU漏洞,附帶修改過帶註釋原始碼一份原始碼
- JavaScript實現垃圾分類小遊戲教程,附原始碼!JavaScript遊戲原始碼
- ecshop仿小米商城原始碼 帶手機移動端原始碼
- Java進階:基於TCP通訊的網路實時聊天室JavaTCP
- TCP/IP 基礎知識TCP
- JAVA Socket 底層是怎樣基於TCP/IP實現的???JavaTCP
- Java容器類原始碼分析之Iterator與ListIterator迭代器(基於JDK8)Java原始碼JDK
- 討論一下基於網頁聊天的實現(類似gmail中的聊天)網頁AI
- TCP IP之ICMP協議TCP協議
- 如何實現監控手機螢幕?(附原始碼)原始碼
- 容器類原始碼解析系列(一) ArrayList 原始碼分析——基於最新Android9.0原始碼原始碼Android
- 帶有Python的音訊處理(附帶原始碼)Python音訊原始碼
- 帶你瞭解TCP/IP協議族TCP協議
- 計算機網路之TCP/IP協議簡介計算機網路TCP協議
- TCP/IP模型的一個簡單解釋TCP模型