setter需要更新对象并返回一些JAVA

时间:2017-09-08 03:08:32

标签: java setter

setPriority(priority: int): ToDoItem

setWhat(what:String):ToDoItem

setWhen(when:String):ToDoItem

三个setter中的每一个都返回更新的对象。这与过去的普通void版本略有不同。

这是一个数组列表

这就是我的UML所说的。

我完全迷失了,我不知道如何开始让一个setter返回一个更新版本的东西,我有一个想法它的for循环但我失去了它的不真实,任何帮助推动我在右边方向表示赞赏

2 个答案:

答案 0 :(得分:1)

您的UML似乎基于fluent interface,您通常会return this;喜欢

public ToDoItem setPriority(int priority) {
    this.priority = priority;
    return this;
}

这个想法是调用者可以将方法调用链接起来。

ToDoItem a = new ToDoItem().setPriority(10).setWhat("what").setWhen("right now");

答案 1 :(得分:0)

如果我理解你的话,你说的是流利的api:

class ToDoItem{
    private int priority;
    private String what;
    private String when;

    public ToDoItem setPriority(int priority) {
        this.priority = priority;
        return this;
    }

    public ToDoItem setWhen(String when) {
        this.when = when;
        return this;
    }
    public ToDoItem setWhat(String what) {
        this.what = what;
        return this;
    }
}