- 监听器实现者:
- public class MyActivity extends Activity implements InternetManager.Listener {
- private TextView mText;
- private InternetManager mInetMgr;
- /* called just like onCreate at some point in time */
- public void onStateChange(boolean state) {
- if (state) {
- mText.setText("on");
- } else {
- mText.setText("off");
- }
- }
- public void onCreate() {
- mInetMgr = new InternetManager();
- mInetMgr.registerListener(this);
- mInetMgr.doYourWork();
- }
- }
- 自定义类,监听器作为内部属性(包含方法),
- 类中存在调用监听器内部方法的地方,
- set不同的监听器实现者,处理的方式便不一样,
- 监听器相当于一个钩子,做回调使用。
- public class InternetManager {
- // all the listener stuff below
- public interface Listener {
- public void onStateChange(boolean state);
- }
- private Listener mListener = null;
- public void registerListener (Listener listener) {
- mListener = listener;
- }
- // -----------------------------
- // the part that this class does
- private boolean isInternetOn = false;
- public void doYourWork() {
- // do things here
- // at some point
- isInternetOn = true;
- // now notify if someone is interested.
- if (mListener != null)
- mListener.onStateChange(isInternetOn);
- }
- }
java监听器实现原理
最新推荐文章于 2022-03-06 19:17:52 发布