7(安卓的回调机制)

家资是何物,积帙列梁梠。这篇文章主要讲述7:安卓的回调机制相关的知识,希望能为你提供帮助。
【7(安卓的回调机制)】1:一个简单的例子

public interface A { void printClassName(); }

public class B implements A { public void printClassName() { System.out.println("This is class B!"); } }

public static void main(String[] args) { A a = new B(); a.printClassName(); }

正常输出“This is class B”
在主函数中定义了接口A,也调用了接口A的方法,但是要注意,实例化的时候其实new的是一个实现了A接口的具体类,我们调用A中的printClassName方法的时候java就会去回调B中的该方法。这样做的优点是什么?就是我们在调用的时候,可以完全不管A的子类是如何实现A中的方法的,只需要调用这个方法即可,怎么实现,我们不管,那是子类的事情了,这样其实是解耦的一种很好的方法,如果我们要修改为别的类,只需要把new后面的子类改掉就好。
 
2:
究竟我们知道了这个机制之后,它有什么用呢?一般来说,用得比较多,就是通信以及MVP模式
通信,其实就是不同组件之间的通信,可以是Fragment和Activity,也可以是Adapter和Activity;
上面我们说到了MVP,这个模式真的很重要,对于比较大的项目来说,意义很深远,既能帮助我们解耦不堪重负的Activity,也能便于我们维护和扩展;

    推荐阅读