我的意思是,
如果class A
需要来自另一个class B
的数据,并且该数据是从class B
提供给class C
的,则
然后,class B
将数据提供给class A
(将来自class C
的数据与它自己的一些数据相结合)。
现在,class B
仅能从class A
接收数据到class C
。
以一个示例为例,class A
启动一个在class B
中定义的弹出窗口,现在class B
具有listview
,数据在{ {1}}在C中。现在,如果用户单击listview
中的listitem
,它将关闭弹出窗口并将listview
上的值发送到listview
。 / p>
我是Java的新手,所以有人请在这里告诉我接口和回调的主要用法。 预先感谢。
答案 0 :(得分:1)
为此,您要使用称为侦听器或观察者的模式。 https://en.wikipedia.org/wiki/Observer_pattern
一般概念:一个侦听器(或多个侦听器)由所观察的类调用,并提供有更改的数据。然后,侦听器可以对数据进行处理。
在您的情况下:B
是C
的侦听器,而A
是B
的侦听器。当C
有一些新数据时,它会通知B
。 B
然后合并数据并通知A
。通知A
后,整个链返回到C
。
您需要了解的一些小警告:如果您在其中一个侦听器中执行了某些阻止操作(例如从filesyste / database / webservice中读取),则会阻止观察到的类。
编辑:侦听器概念的一个很好的例子是java swing中的ActionListeners(https://docs.oracle.com/javase/tutorial/uiswing/events/actionlistener.html)。