<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 20  文章 - 57  trackbacks - 0
    <2010年10月>
    262728293012
    3456789
    10111213141516
    17181920212223
    24252627282930
    31123456

    常用鏈接

    留言簿(2)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    51CTO

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    曾以為QQ很神秘

    后來覺得QQ很簡單,感覺無非就是一個QQ客戶端發送一個消息到服務器,然后服務器將消息發送到指定QQ客戶端

    現在把當時想的過程畫了下來

    (大家別笑話我啊,當時真的就是這么想的,感覺很簡單——其實,當自己去實現的時候,真的很復雜!!!)


    還寫了一些代碼,不過還不能具體運行,僅僅是一個框架:

    我把這些都放在QQ包內:

    *****************************************************************
    首先,定義了一個客戶端接口——可能有點羅嗦,沒有完全實現接口的作用

    package QQ;

            /**

                這個接口的作用是用來實現客戶端向服務器發送消息的接口。

            */

    public interface QQClientInterface {
       
        public void SendServerMessage();
        public QQMessage ToFromQQServer();

    }


    ****************************************************************

    ================================================================

    ****************************************************************

    這是一個服務器的接口——貌似和上面的接口重復了!!!


    package QQ;

            /**

                    用來實現QQ服務器向QQ客戶端發送消息,和接受QQ客戶端發送來的消息

            */

    public interface QQServerInterface {
       
        public QQMessage SendMessageToQQClient(String QQName);
        public void GetMessageFromQQClient();

    }

    ****************************************************************

    ================================================================

    ****************************************************************

    這里插入一個消息類QQMessage

    package QQ;

        /**

            這個類專門用來存放QQClient和QQserver發送的消息。

         */

    public class QQMessage {
       
        private String FromQQName;
        private String ToQQName;
       
       
        public String getFromQQName() {
            return FromQQName;
        }
        public void setFromQQName(String fromQQName) {
            FromQQName = fromQQName;
        }
        public String getToQQName() {
            return ToQQName;
        }
        public void setToQQName(String toQQName) {
            ToQQName = toQQName;
        }

       
    ****************************************************************

    ================================================================

    ****************************************************************

    下面可以重點~\(≧▽≦)/~啦啦啦

    這是QQ客戶端的代碼:


    package QQ;

    public class QQClient implements QQClientInterface {

        private String QQName;
        private QQMessage message;
       

        public void SendServerMessage() {
           
            /**
           
                    用來實現對QQ服務器發送消息(調用QQ服務器的接受消息的方法,將消息發送到服務器)
             
            */   
       
           
           
           
            }




        public QQMessage ToFromQQServer() {
           
            /**
           
                    隔一段時間向服務器發送一個消息,帶有自己QQName的消息,然后QQ服務器檢索,是否
                    有消息要傳給這個QQ,如果有將消息傳過來,并顯示。
                   
            */
           
            return null;
        }


        public String getQQName() {
            return QQName;
        }


        public void setQQName(String qQName) {
            QQName = qQName;
        }


        public QQMessage getMessage() {
            return message;
        }


        public void setMessage(QQMessage message) {
            this.message = message;
        }
       
       

    }


    ****************************************************************

    ================================================================

    ****************************************************************

    最后是服務器端的代碼:

    package QQ;

    import java.util.HashMap;
    import java.util.Map;

    public class QQServer implements QQServerInterface {
       
        Map<String,QQMessage> qqMessage = new HashMap<String,QQMessage>();


        public QQMessage SendMessageToQQClient(String QQName) {
           
            /**
             
                     QQServer要發送消息必須滿足兩個條件:
                    
                                 1. QQ客戶端將自己的QQName發送給QQServer,然后根據自己的QQNameQQ服務器開始遍歷qqMessage;
                                 2. qqMessage的Values不是null。
                                
                         如果QQMessage不為空,則將自己的V發送給QQName,否則返回Null;
             
            */
           
            return null;
        }



        public void GetMessageFromQQClient() {

            /**
             
             QQServer接受消息,并將消息存放在qqMessage中
            
     
            */
           
        }

    }


    ****************************************************************
    ****************************************************************

    暫時還沒寫出一個簡單QQ程序,大家盡心等待!我一定會寫出一個讓自己滿意的即時通訊程序!










    posted on 2010-10-29 21:12 tovep 閱讀(1286) 評論(6)  編輯  收藏

    FeedBack:
    # re: Java_QQ框架_簡單版 2010-11-10 20:07 小六夜瘋狂
    是啊!有想法就好啊!我支持。  回復  更多評論
      
    # re: Java_QQ框架_簡單版 2010-11-10 21:16 Tovep
    @小六夜瘋狂
    謝謝你的支持!!!
    現在不能只有想法,更重要的是去實現,所以我會在這段時間,實現他~~~  回復  更多評論
      
    # re: Java_QQ框架_簡單版 2010-11-28 18:35 r3tt
    feereerer  回復  更多評論
      
    # re: Java_QQ框架_簡單版 2010-11-28 18:35 r3tt
    dferfer  回復  更多評論
      
    # re: Java_QQ框架_簡單版 2011-10-21 15:06 ぬ~﹏微 笑、べ →愛
    我我我我   回復  更多評論
      
    # re: Java_QQ框架_簡單版 2011-10-21 15:06 ぬ~﹏微 笑、べ →愛
    往往我我我我我我我我  回復  更多評論
      

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主頁 主站蜘蛛池模板: 久99久精品免费视频热77| 亚洲精品无码人妻无码| 亚洲AV永久无码精品一百度影院| 亚洲国产精品一区二区三区久久| 免费国产不卡午夜福在线 | 麻豆亚洲AV成人无码久久精品 | 久久亚洲私人国产精品vA| 亚洲AV成人无码久久精品老人| 亚洲AV无码久久精品成人| 亚洲成人中文字幕| 亚洲第一永久在线观看| 国产99在线|亚洲| 日韩色视频一区二区三区亚洲| 精品国产亚洲AV麻豆| 无码毛片一区二区三区视频免费播放 | 亚洲综合在线一区二区三区| 一本色道久久88亚洲精品综合 | 亚洲色精品VR一区区三区| 亚洲精品GV天堂无码男同| 日本一区二区三区在线视频观看免费| 美女被免费视频网站a| 久久久精品视频免费观看 | 两性刺激生活片免费视频| 成人毛片免费网站| 亚洲AⅤ永久无码精品AA| 亚洲熟妇无码AV在线播放| 亚洲一区二区三区高清| 亚洲日韩av无码中文| 香蕉视频在线观看免费| a国产成人免费视频| 无码国产精品一区二区免费虚拟VR| 99re热免费精品视频观看| 色吊丝最新永久免费观看网站| 狠狠色婷婷狠狠狠亚洲综合| 久久亚洲美女精品国产精品| 亚洲综合一区二区三区四区五区| 一区二区三区免费电影| 久久精品免费一区二区| 免费一级特黄特色大片在线观看| 亚洲AV无码日韩AV无码导航 | 国产亚洲精aa成人网站|