1. 程式人生 > >JAVA入門到精通-第94講-山寨QQ專案8-好友線上提示

JAVA入門到精通-第94講-山寨QQ專案8-好友線上提示

遇到的問題:
現在每登入一個人,後面的人是能看到前面的登入的人的; 但是,前面的人看不到後面的人登入;
//後面每登入一個人,有責任去通知前面登入的人他已經上線了; 通知了完以後,需要更改好友線上的情況;










//不讓同一個賬號反覆登入 //如果 好友不線上,則不能聊天
================================

[ManageQqChat.java]

20   1
/**
2
 * 這是一個管理使用者聊天介面的類
3
 */
4
package com.qq.client.tools;
5
 
6
import java.util.HashMap;
7
import com.qq.client.view.QqChat;
8
 
9
public class ManageQqChat {
10
    private static HashMap hm=new HashMap<String,QqChat>();
11
   
12
    //加入
13
    public static void addQqChat(String loginIdAndFriendId,QqChat qqChat){
14
        hm.put(loginIdAndFriendId, qqChat);
15
    }
16
    //取出
17
    public static QqChat getQqChat(String loginIdAndFriendId){
18
        return (QqChat)hm.get(loginIdAndFriendId);
19
    }
20
}

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

[ManageQqFriendList.java]

19   1
/**
2
 * 管理qq好友、陌生人、黑名單介面類
3
 */
4
package com.qq.client.tools;
5
 
6
import java.util.HashMap;
7
import com.qq.client.view.QqFriendList;
8
 
9
public class ManageQqFriendList {
10
    private static HashMap hm=new HashMap<String,QqFriendList>();
11
    //加入
12
    public static void addQqFriendList(String qqid,QqFriendList qqFriendList){
13
        hm.put(qqid, qqFriendList);
14
    }
15
    //取出
16
    public static QqFriendList getQqFriendList(String qqId){
17
        return (QqFriendList)hm.get(qqId);
18
    }
19
}

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

com.qq.common

[Message.java]

45   1
/**
2
 * 為Message規定規則
3
*/
4
package com.qq.common;
5
 
6
import java.io.Serializable;
7
 
8
public class Message implements Serializable{
9
    private String mesType;
10
    private String sender;
11
    private String getder;
12
    private String con;
13
    private String sendTime;
14
   
15
    public String getGetder() {
16
        return getder;
17
    }
18
    public void setGetder(String getder) {
19
        this.getder = getder;
20
    }
21
    public String getSender() {
22
        return sender;
23
    }
24
    public void setSender(String sender) {
25
        this.sender = sender;
26
    }
27
    public String getCon() {
28
        return con;
29
    }
30
    public void setCon(String con) {
31
        this.con = con;
32
    }
33
    public String getSendTime() {
34
        return sendTime;
35
    }
36
    public void setSendTime(String sendTime) {
37
        this.sendTime = sendTime;
38
    }
39
    public String getMesType() {
40
        return mesType;
41
    }
42
    public void setMesType(String mesType) {
43
        this.mesType = mesType;
44
    }
45
}

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

[MessageType.java]

12   1
/**
2
 * 定義訊息包的種類的介面
3
 */
4
package com.qq.common;
5
 
6
public interface MessageType {
7
    String message_succeed="1";//登入成功包
8
    String message_login_fail="2";//登入失敗包
9
    String message_comm_mes="3";//普通訊息包
10
    String message_get_onLineFriend="4";//要求線上的好友包
11
    String message_ret_onLineFriend="5";//返回線上好友包
12
}

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

[User.java]

22   1
/**
2
 * 這是使用者資訊類
3
 */
4
package com.qq.common;
5
 
6
import java.io.Serializable;
7
public class User implements Serializable{
8
    private String userId;
9
    private String passwd;
10
    public String getUserId() {
11
        return userId;
12
    }
13
    public void setUserId(String userId) {
14
        this.userId = userId;
15
    }
16
    public String getPasswd() {
17
        return passwd;
18
    }
19
    public void setPasswd(String passwd) {
20
        this.passwd = passwd;
21
    }
22
}

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

至此,韓順平JAVA入門到精通(94)視訊到此完結。

筆記包含完整的視訊PPT內容,及所有演示示例程式碼,和視訊中所有作業答題。

學習注意:

視訊教學內容簡單易學,容易上手。對於JAVASE的內容講解通俗易懂,不過深度不高,講的較為淺顯。主要是讓學員對JAVASE有所瞭解,本人對視訊印象深刻的為在企業開發中的注意事項,及開發軟體的規則。對於需要全面瞭解學習JAVA的朋友來說,還需研讀更深、更全面的JAVA書籍,及JAVA程式設計思想。從而對JAVA有全面的認識。

韓順平講師的後續視訊筆記,將陸續放出。












來自為知筆記(Wiz)