标签:his 完全 log int 实例 string 就会 修改 组件
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,也能便于我们维护和扩展;
标签:his 完全 log int 实例 string 就会 修改 组件
原文地址:http://www.cnblogs.com/wnpp/p/7818335.html