在声明Dagger模块时,是否有使用接口和抽象类的任何建议准则?例如:
@Module
abstract class MyFragmentModule {
@get:ContributesAndroidInjector(modules = [SampleModule::class])
abstract val myFragment: MyFragment
}
@Module
interface MyFragmentModule {
@get:ContributesAndroidInjector(modules = [SampleModule::class])
val myFragment: MyFragment
}
显然,一个人比另一个人没有优势,但是什么情况会鼓励我使用特定的人呢?