为什么`SimpleIntegerProperty`不是`Property <integer>`而是Property <number>?

时间:2017-02-15 09:55:05

标签: javafx

在尝试为another issue with ReactFx's Var bindings的调查提供一个最小的例子时,我偶然发现了一些愚蠢的JavaFX属性的奇怪实现。我正在尝试使用SimpleIntegerProperty作为期望Property<Integer>的函数的参数。但是,这不会编译,因为SimpleIntegerProperty没有实现此接口。相反,它实现了Property<Number>。我觉得很奇怪,我无法分配Property<Integer> p = new SimpleIntegerProperty(),如下面的代码所示:

    javafx.beans.property.Property<Integer> p;
    javafx.beans.property.SimpleIntegerProperty s;

    p = s;

我理解为什么在当前的继承层次结构中这不起作用,但它感觉很奇怪,我正在寻找设计背后的动机。

0 个答案:

没有答案