Javafx 执行顺序:两个绑定中的一个属性?

Javafx 执行顺序:两个绑定中的一个属性?,javafx,binding,Javafx,Binding,当我有一个属性作为两个不同绑定中的依赖项时;并且属性已更改-将首先调用/重新计算哪个绑定 我做了一个练习: y.bind(a.or(b)); x.bind(a.or(c)); x.addListener((ObservableValue<? extends Boolean> arg0, Boolean oldValue, Boolean newValue) -> { System.out.println

当我有一个属性作为两个不同绑定中的依赖项时;并且属性已更改-将首先调用/重新计算哪个绑定

我做了一个练习:

        y.bind(a.or(b));

        x.bind(a.or(c));

        x.addListener((ObservableValue<? extends Boolean> arg0, Boolean oldValue, Boolean newValue) -> {
            System.out.println("x has changed");
        });

        y.addListener((ObservableValue<? extends Boolean> arg0, Boolean oldValue, Boolean newValue) -> {
                System.out.println("y has changed");    
        });
y.bind(a.or(b));
x、 绑定(a.或(c));

x、 addListener((observeValueIt’s's's the order of the declaration of the bindings:
y.bind(a.or(b));x.bind(a.or(c))
。工作流是这样的:
a
被标记为要更改->所有绑定都将失效:首先
y
-
y
触发队列中的更改事件;然后
x
被更改-
x
的更改事件现在也在队列中->最后
a
也将其eve放入队列nt到队列:y->x->a。谢谢-但我不明白的是,当我更改a时,为什么不首先调用a-Listener?是否有(任何其他)方法可以首先通知a值的更改?这是因为绑定声明的顺序:
y.bind(a.or(b));x.bind(a.or(c))
。工作流是这样的:
a
被标记为要更改->所有绑定都将失效:首先
y
-
y
触发队列中的更改事件;然后
x
被更改-
x
的更改事件现在也在队列中->最后
a
也将其eve放入队列nt到队列:y->x->a。谢谢-但我不明白的是,当我更改a时,为什么不首先调用a-Listener?是否有(任何其他)方法可以首先通知a值的更改?
  a.addListener((ObservableValue<? extends Boolean> arg0, Boolean          oldValue, Boolean newValue) -> {
            System.out.println("a has changed");
        });

        y.bind(a.or(b));

        x.bind(a.or(c));

        x.addListener((ObservableValue<? extends Boolean> arg0, Boolean oldValue, Boolean newValue) -> {
            System.out.println("x has changed");
        });

        y.addListener((ObservableValue<? extends Boolean> arg0, Boolean oldValue, Boolean newValue) -> {
                System.out.println("y has changed");    
        });