Dagger
依赖注入的诉求, 这边就不重复描述了, 在上文Spring以及Guice的IOC文档中都有提及, 既然有了Guice,
Google为啥还要搞个Dagger2出来重复造轮子呢?...因为使用动态注入, 虽然写法简单了, 耦合也降低了,
但是带来了调试不方便, 反射性能差等一些缺点.
而Dagger跟Guice最大的差异在于, 他是编译期注入的, 而不是运行时....下面我们通过Dagger注入的方式来写.
写法很简单, 跟Guice类似, 我们只需要在reportpage成员上加@Inject注解....下面演示如何注入接口对象....基本差不多, 各个注解概念也类似,
最大的区别就是非动态注入, 非反射实现, 而是编译期静态注入.