2
這裏是一個最小的工作例如:監聽工作,綁定不
public class FF {
@Test
public void test01() {
final ListProperty p = new SimpleListProperty(FXCollections.observableArrayList());
p.addListener((ListChangeListener) c -> {
System.err.println("Listener here..");
});
Bindings.createObjectBinding(() -> {
System.err.println("Binding here");
return null;
}, p);
p.add("hans");
}
@Test
public void test02() {
final ListProperty p = new SimpleListProperty(FXCollections.observableArrayList());
final ListProperty p2 = new SimpleListProperty(FXCollections.observableArrayList());
p.addListener((ListChangeListener) c -> {
System.err.println("Listener 1 here..");
});
p2.addListener((ListChangeListener) c -> {
System.err.println("Listener 2 here..");
});
final ObjectBinding ob = Bindings.createObjectBinding(() -> {
System.err.println("Binding here");
return null;
}, p);
p2.bind(ob);
p.add("hans");
}
}
第二個測試看起來像預期,但對於第一次測試,輸出就是「監聽器在這裏..」。爲什麼綁定在這種情況下不起作用?
匿名偵聽器和匿名綁定有什麼區別?