ReadOnlyIntegerWrapper

ReadOnlyIntegerWrapper

什么时候用哪一种?
如果它调用 ReadOnlyIntegerWrapper 那么为什么我们仍然可以更改它的值?这是示例。

import javafx.beans.property.*;
public class ReadOnlyCheck{
    public static void main(String... args){
        ReadOnlyIntegerWrapper idWrapper = new ReadOnlyIntegerWrapper(100);
        ReadOnlyIntegerProperty id = idWrapper.getReadOnlyProperty();
        System.out.println("idWrapper:" + idWrapper.get());
        System.out.println("id:" + id.get());
        // Change the value
        idWrapper.set(101);
        System.out.println("idWrapper:" + idWrapper.get());
        System.out.println("id:" + id.get());
    }
}

所以想问问他们有什么区别。

编辑:

如果 ReadOnlyIntegerWrapper 也可以更改值,那么 SimpleIntegerProperty() 有什么用?为什么他们引入了 ReadOnlyIntegerWrapper?

最佳答案

ReadOnlyIntegerProperty 是 ReadOnlyIntegerWrapper 的父类(super class)。

所以 ReadOnlyIntegerWrapper 是 ReadOnlyIntegerProperty 具有附加行为,它是一个方便的类来定义只读属性。它创建了两个同步的属性。一个属性是只读的,可以传递给外部用户。另一个属性是可读写的,只能在内部使用。

关于javafx - ReadOnlyIntegerWrapper 和 ReadOnlyIntegerProperty 有什么区别?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38935321/

10-12 00:24