美文网首页
监听回调实例

监听回调实例

作者: mapleSeriesX | 来源:发表于2018-12-14 14:15 被阅读0次
    /**
     * Created by maple on 2018/12/14 13:56
     * E-Mail Address:740917401@qq.com
     */
    public class A {
        /*A的监听器*/
        private OkListener listener = null;
    
        /**
         * 执行该方法的时候会回调B监听的onOK(int i)
         *
         * @author maple
         * @time 2018/12/14 14:07
         */
        public void doSomeTingForA() {
            if (listener != null) {
                listener.onOk(1);
            }
        }
    
        /**
         *A的接口
         *
         * @author maple
         * @time 2018/12/14 14:09
         */
        public interface OkListener {
            /*回调方法*/
            void onOk(int code);
        }
    
        /**
         *设置A的监听器
         *
         * @author maple
         * @time 2018/12/14 14:10
         */
        public void setListener(OkListener listener) {
            this.listener = listener;
        }
    }
    
    
    /**
     * Created by maple on 2018/12/14 13:57
     * E-Mail Address:740917401@qq.com
     */
    public class B {
        /**
         * 监听A的接口回调
         *
         * @author maple
         * @time 2018/12/14 14:12
         */
        A.OkListener okListener = new A.OkListener() {
            @Override
            public void onOk(int code) {
                //doSomeTing
                System.out.println("code:" + code);
            }
        };
    
        /**
         * 设置监听器
         *
         * @author maple
         * @time 2018/12/14 14:13
         */
        void doSomeTingForB() {
            A a = new A();
            a.setListener(okListener);
        }
    }
    
    

    相关文章

      网友评论

          本文标题:监听回调实例

          本文链接:https://www.haomeiwen.com/subject/ixqghqtx.html