我想重新使用一个 Builder 实例来创建几个控件,但是我遇到了我不理解的编译错误。我认为它们是由于我没有正确理解泛型造成的。任何人都可以帮忙吗?
ButtonBuilder builder = ButtonBuilder.create().minHeight(40.0).minWidth(40.0);
Button button1 = builder.onAction(clickHandler).build(); // Error
Button button2 = ButtonBuilder.create().minHeight(40.0).minWidth(40.0).onAction(clickHandler).build(); //OK
其中 clickHandler 是一个EventHandler<ActionEvent>
我得到的错误是
error: cannot find symbol
Button button1 = builder.onAction(clickHandler).build();
^
symbol: method build()
location: class ButtonBaseBuilder
ButtonBaseBuilder 实现了 Builder 所以它应该有一个 build() 方法,不是吗?此外,如果我将所有内容一起运行(如在 button2 中),那就没问题了。
这是在 JDK 7.0u4 和 JavaFX SDK 2.1 上
在此先感谢,皮特