Java 当双向绑定两个具有不同值的属性时,取哪个值?

Java 当双向绑定两个具有不同值的属性时,取哪个值?,java,javafx-8,Java,Javafx 8,当我在JavaFx中双向绑定两个属性时,它们以不同的值开始,取哪一个 ObjectProperty<MyType> property1 = new SimpleObjectProperty(value1); ObjectProperty<MyType> property2 = new SimpleObjectProperty(value2); property1.bindBidirectional(property2); // will both properties b

当我在JavaFx中双向绑定两个属性时,它们以不同的值开始,取哪一个

ObjectProperty<MyType> property1 = new SimpleObjectProperty(value1);
ObjectProperty<MyType> property2 = new SimpleObjectProperty(value2);
property1.bindBidirectional(property2);
// will both properties be set to value1 or to value2?
没有指定行为,因此您所做的任何测试和发现都不应该依赖,因为Java的下一个版本可能会改变实现

与其依赖未记录的行为,不如编写代码,这样内部实现就不重要了

例如,为两个属性指定相同的值:

ObjectProperty<MyType> property1 = new SimpleObjectProperty(value1);
ObjectProperty<MyType> property2 = new SimpleObjectProperty(value1);
property1.bindBidirectional(property2);
objectproperty1=新的SimpleObjectProperty(value1);
ObjectProperty property2=新的SimpleObject属性(值1);
财产1.2(财产2);
没有指定行为,因此不应依赖您所做的任何测试和发现,因为下一版本的Java可能会改变实现

与其依赖未记录的行为,不如编写代码,这样内部实现就不重要了

例如,为两个属性指定相同的值:

ObjectProperty<MyType> property1 = new SimpleObjectProperty(value1);
ObjectProperty<MyType> property2 = new SimpleObjectProperty(value1);
property1.bindBidirectional(property2);
objectproperty1=新的SimpleObjectProperty(value1);
ObjectProperty property2=新的SimpleObject属性(值1);
财产1.2(财产2);

为什么不给它们相同的初始值呢?@Bohemian在现实情况下,它们并不相邻。但在我的模型中有一个前导值,其中设置了默认值。然后控件将绑定到此默认值(例如,choicebox的选定值)为什么不给它们相同的初始值?@Bohemian在现实情况下,它们不是相邻的。但在我的模型中有一个前导值,其中设置了默认值。然后控件将绑定到此默认值(例如choicebox的选定值)