【问题标题】:What does provider mean when used in method declaration?在方法声明中使用时提供者是什么意思?
【发布时间】:2014-08-09 14:36:21
【问题描述】:

我偶然发现了这段代码:

public ServiceBuilder provider(Class<? extends Api> apiClass)

在这种情况下提供者是什么意思?

编辑:

这是我在其中找到的一段代码:

https://github.com/fernandezpablo85/scribe-java/blob/master/src/main/java/org/scribe/builder/ServiceBuilder.java

【问题讨论】:

  • 恕我直言,当它抛出像你这样的问题时,这不是一个好名字。

标签: java oop provider


【解决方案1】:

这是方法的名称。 provider() 方法返回一个 ServiceBuilder。

这是指向 Java Service Provider Interface 的链接。

【讨论】:

  • 查看链接。 “提供者”是 Java 中的一个东西。这不是一个坏名字。也许“getProvider()”会更好,但有些人不关心到处重复的“get”方法。
  • @markspace 不是真的,如果你看到源它是一个集合那么 getProvider 怎么可能比提供者更好?无论如何,如果您在主页中看到代码示例:github.com/fernandezpablo85/scribe-java,这是一个非常棒的单行代码名称。
  • 'Provider' 是一个名词,它们不应该用作名称。我猜getProvider() 更糟,因为在这种情况下它会违反 getter 和 setter 约定(getter 没有参数)。另外,这个方法甚至不返回一个Provider对象而是ServiceBuilder。
  • @MrPixelDream 现在,provider 这个名字非常棒。如果您看到示例 github.com/fernandezpablo85/scribe-java,这是一个不错的选择。我不明白你们为什么在没有看到源代码的情况下说这是一个坏名字(或者至少是主页中的示例)。
  • 那么在这个上下文中,ServiceBuilder定义了这个方法的返回类型?类似于 void 的作用?意思是这个函数返回一个ServiceBuilder类对象?
【解决方案2】:

在这种情况下提供者是什么意思?

似乎这个类与OAuth 一起使用。它是一种独特的方式来使用来自各种服务的多次登录。

例子:

您的方法似乎用于根据您传递的内容创建 API 的实例。

provider(FacebookApi.class)

用于 Facebook 等。然后使用所有数据构建一个服务。

提供者是指提供访问令牌(和身份验证数据)的人

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-03
    • 1970-01-01
    • 2014-09-20
    • 1970-01-01
    相关资源
    最近更新 更多