有什么区别set(String)
and setValue(String)
in the SimpleStringProperty http://docs.oracle.com/javafx/2/api/javafx/beans/property/StringProperty.html#setValue%28java.lang.String%29 class?
我知道set(String)
源自StringPropertyBase http://docs.oracle.com/javafx/2/api/javafx/beans/property/StringPropertyBase.html#set%28java.lang.String%29,但这让我更加想知道,为什么另外还有setValue(String)
?
set/setValue
and get/getValue
方法对的存在是为了将对象属性与基本类型属性对齐,例如BooleanProperty
or DoubleProperty
:
布尔属性:
void set(boolean value)
void setValue(java.lang.Boolean v)
双重财产:
void set(double value)
void setValue(java.lang.Number v)
在这些属性类别中___Value
方法与对应类型对象一起使用,而直接方法与原始类型一起使用。
查看代码,您可能会发现逻辑上有些不同。例如,DoubleProperty#setValue(null)
等于DoubleProperty#set(0.0)
(这是绑定所必需的)。因此,一般来说,我建议使用 set/get 方法,并将 setValue/getValue 留给绑定需求,因为它们可能会包含额外的逻辑。
对于对象/字符串属性,set 和 setValue 方法之间没有区别。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)