一介面多實現「事件分發」實現

2021-08-04 15:59:06 字數 1033 閱讀 7252

//

public class voicestateclient }}

return mclient;

}

//定義乙個介面

public inte***ce voicestatelistener

public static setmstatelisteners = new hashset();

//每次呼叫該介面的時候,遍歷分發事件,為防止不斷新增導致記憶體洩漏,每次的分發都要清除掉以前的類

public void sethdstatelistener(voicestatelistener otgreadlistener)else if (listener instanceof testactivity 

) else if (listener instanceof madapter) }

mstatelisteners.add(otgreadlistener);

}}

//實現介面的類中呼叫,註冊監聽事件

mclient=searchrecoderclient.getinstance();

mclient.setsrlistener(this);

//在需要的地方呼叫的時候

for(voicestatelistener mlistener:voicestateclient.mstatelisteners)

最後如果是一對一的介面實現就不需要使用hashset進行遍歷分發了。直接處理即可。

2016 01 29 介面實現的方法

乙個子類可以實現多個介面 package com.mz inte ce a3 inte ce c class b3 implements a3,c public void fun public void funa public class inte cedemo03 下面既是子類實現兩個介面和同時實...

16 介面定義與實現

1.建立介面package 介面 介面都需要實現類 public inte ce userservice 介面注意事項 1.約束作用,按照介面的規則進行編寫 2.介面就是定義乙個方法,讓其他人進行實現。3.介面中定義常量 public static fianl 4.介面中定義方法 public ab...

Qt 登陸介面實現

qt 登陸介面實現 新專案要用到qt,所以最近研究qt,昨天安裝好部署好qt creator現在馬上開始第乙個程式。做乙個簡單的登陸 介面功能 效果圖如下 部分 mainwindow.h include logindlg.h 主介面logindlg login 登陸介面 if login.exec ...