【问题标题】:Java method chaining suggestionJava 方法链接建议
【发布时间】:2016-10-19 15:01:21
【问题描述】:

我了解可以通过以下方式进行方法链接:

public Mind increment(){
        this.age++;
        return this;
    }

但如果我要对此进行测试,它将允许我这样调用链:

rf.increment().increment().increment();

正如我所见,例如Toast.MakeText(),不建议再次将“MakeText”作为方法调用。知道这是怎么做到的吗?

【问题讨论】:

  • 这可能是因为makeText()Toast 上的静态方法。在您调用它之后,您的 IDE 可能只会推荐 Toast 上的实例方法。
  • 你到底想知道什么?
  • @marstran 这应该是一个答案,因为 makeText() 就我而言是静态的。
  • 正是@marstran 所说的。 makeText 不是为链接而设计的。它不返回这个;它返回一个全新的实例。看看at the source code

标签: java android chaining method-chaining


【解决方案1】:

@marstran 和@flkes 指出了答案; makeText() 是 Toast 上的一个静态方法,它本身不返回“this”,而是一个新实例。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-10-17
    • 1970-01-01
    • 1970-01-01
    • 2016-09-10
    • 1970-01-01
    • 2011-11-16
    • 2011-07-14
    • 1970-01-01
    相关资源
    最近更新 更多