当前位置: 首页 > 知识库问答 >
问题:

要求扩展类监听抽象类javaFX属性中的更改

宗政浩慨
2023-03-14

我想构建一个抽象类,并指定扩展类监听/处理的某些JavaFX属性。例如,我有:

共有1个答案

葛宪
2023-03-14

尝试以下操作:

public abstract class CircleX {

    private final DoubleProperty layoutX ;

    public CircleX() {
        layoutX = new SimpleDoubleProperty();
        layoutX.addListener((obs, oldValue, newValue) ->
            layoutXUpdated(oldValue, newValue));
    }

    public abstract void layoutXUpdated(Double oldLayoutX, Double newLayoutX) ;

    public DoubleProperty layoutXProperty() {
        return layoutX ;
    }

    public final double getLayoutX() {
        return layoutXProperty().get();
    }

    public final void setLayoutX(double layoutX) {
        layoutXProperty().set(layoutX);
    }
}

这里,您在调用抽象方法的超类中添加了一个侦听器。那么任何子类都必须实现抽象方法,当属性改变时调用该方法。

 类似资料:
  • 大约两个月前,我刚刚开始使用java,我正在尝试更多地理解抽象类。我理解抽象及其实现的基本思想,但我不明白为什么一个抽象类会扩展另一个抽象类,以及它添加了哪些功能。还有,我看到一个抽象类扩展了另一个抽象类,但它只实现了另一个抽象类的一个功能。 我确实查了一些示例代码,但它们只显示了实现,没有给出任何解释: 如您所见,抽象类并没有实现抽象类中的所有功能。它只实现函数。但是如果是具体的,那么就需要实现

  • 本文向大家介绍C#扩展抽象基类,包括了C#扩展抽象基类的使用技巧和注意事项,需要的朋友参考一下 示例 与接口(可以描述为实现合同)不同,抽象类充当扩展的合同。 抽象类无法实例化,必须对其进行扩展,然后可以实例化生成的类(或派生类)。 抽象类用于提供通用实现 上面的示例显示了实现Car的任何扩展类如何自动接收HonkHorn方法。这意味着任何开发新汽车的开发人员都无需担心它将如何鸣笛。

  • 问题内容: 我之前了解到抽象类可以扩展具体类。尽管我没从JAVA设计师那里看到原因,但是没关系。我还了解到,扩展具体类的抽象类可以使重写的方法抽象。为什么?您可以提供有用的用例吗?我正在尝试学习设计模式,我不想错过任何东西。 这是示例: 问题答案: 如果我有一组想要默认实现的类(以便它们可以从扩展),并且想要强制提供自己的实现(在这种情况下使其抽象为子类会强制执行此操作。) 当然,此示例中的另一种

  • 我有一个抽象类B,它扩展了另一个抽象类A。在抽象类A中,我有一个受保护的方法转换。我想测试方法foo,它从没有实现的基类调用方法convert。如果无法更改转换方法签名,如何模拟方法转换。 我使用Mockito.spy()调用真正的方法,但转换方法是不可用的嘲弄(通过Mockito.when(...)。 告诉我如何测试方法foo。

  • 问题内容: 有这样的事情: 抽象类: 和扩展器: 我想要的是扩展,因为如果不处理它,然后尝试在中处理它。例如add- 但同时让类处理默认值,例如。 这是完全错误的方法吗? 到目前为止,我所做的就是添加一个接口。通常: 在课堂上: 在课堂上: 这看起来像是可用的设计吗? 并且,主要问题: 有没有什么好办法扩展该类,以便可以使用与in 中相同的切换方法?我想知道的是,有没有一个更好的设计,第二个是是否

  • 我正在用Java构建一个库管理应用程序。 我有一个名为 的抽象类。它有一个称为 的抽象方法。 有一个名为< code>Newspaper的子类,它当然实现了< code>equals,其签名与< code>equals在< code>Material中的签名完全相同: Java无法解析< code > elementoacomparer 的任何方法。它们都存在于< code >报纸中,该报纸确实扩