在NetBeans 8中封装JavaFX属性?

时间:2014-09-13 09:34:48

标签: java netbeans properties javafx encapsulation

这是我在StackOverflow上的第一个问题,所以我希望这不是一个愚蠢的问题: - )

有没有办法在NetBeans 8中自动封装JavaFX属性?

我们想说我们要封装这个字段:

private SimpleIntegerProperty id;

当我去Refactor>封装字段,我获得这些行:

public SimpleIntegerProperty getId() {
    return this.id;
}

public setId(SimpleIntegerProperty id) {
    this.id = id;
}

但是我想得到它:

public Integer getId() {
    return id.get();
}

public void setId(Integer id) {
    this.id.set(id);
}

public SimpleIntegerProperty idProperty() {
    return id;
}

有一种简单的方法吗? 感谢。

1 个答案:

答案 0 :(得分:1)

您可以转到Source->插入代码并选择添加JavaFX属性,而不是重构。 然后,在对话框中,为您的媒体资源命名,即id,根据需要提供默认值,选择属性类型,即IntegerProperty,然后点击确定。

然后这就是你得到的:

private final IntegerProperty id = new SimpleIntegerProperty();

public int getId() {
    return id.get();
}

public void setId(int value) {
    id.set(value);
}

public IntegerProperty idProperty() {
    return id;
}

最后,如果需要,您可以手动将简单类型int更改为Integer