【发布时间】:2016-07-28 05:35:32
【问题描述】:
为什么要在提供方法之前使用静态修饰符?
即使我删除了静态修饰符,dagger2 也能正常工作。
@Provides static Pump providePump(Thermosiphon pump) {
return pump;
}
【问题讨论】:
-
我不知道。我认为文档实际上是在这种情况下撒谎。您将如何覆盖模拟的静态提供程序方法?你不能。因此,添加
static确实是愚蠢的,并且文档对此毫无意义。尽管它也以其“咖啡示例”而闻名,但实际上并没有告诉您如何使用该库,所以难怪它会做其他没有意义的事情。 /咆哮 -
对
@Provides使用静态函数有助于减少一些生成的代码。
标签: dependency-injection dagger-2