我们可以在javafx中的多个类之间创建回调

问题描述 投票:0回答:1

我的意思是 ,

如果class A需要来自另一个class B的数据,并且该数据从class B提供给class C

然后class Bclass A提供数据(将来自class C的数据与其自身的一些数据相结合)。

现在,class B只能向class A提供数据,如果它从class C收到的话。

举一个例子,class A启动一个弹出窗口,在class B中定义,现在class Blistviewlistview中的数据在C中。现在如果用户点击listitem中的listview,它应该关闭弹出窗口并发送值在listviewclass A

我是java新手,所以有人请告诉我这里接口和回调的主要用途。提前致谢。

java javafx callback
1个回答
1
投票

为此,您希望使用名为Listener或Observer的模式。 https://en.wikipedia.org/wiki/Observer_pattern

一般概念:监听器(或多个侦听器)由被观察的类调用并提供已更改的数据。然后,监听器可以对数据执行某些操作。

在你的情况下:BC的倾听者,AB的倾听者。当C有一些新数据时,它会通知BB然后结合数据并通知A。在A被告知后,整个链条返回C

您需要知道的一点需要注意:如果您在其中一个监听器中执行了一些阻止操作(如从文件系统/数据库/ Web服务中读取),您将阻止观察到的类。

编辑:监听器概念的一个很好的例子是java swing中的ActionListeners(https://docs.oracle.com/javase/tutorial/uiswing/events/actionlistener.html)。

© www.soinside.com 2019 - 2024. All rights reserved.