Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/343.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何移植使用Java和Android系统委托的应用程序_Java_Android_Delegates - Fatal编程技术网

如何移植使用Java和Android系统委托的应用程序

如何移植使用Java和Android系统委托的应用程序,java,android,delegates,Java,Android,Delegates,我有一个用Delphi编写并移植到C#的应用程序,它广泛使用委托(这使我能够轻松地添加新模块)。我认为它会成为一款很棒的Android手机应用程序,但Java并不是天生的。我已经看到了一些Java代码的示例,这些代码试图使用反射进行委托,但对于小型设备应用程序来说,这似乎并不有效 关于如何在不进行大规模重新架构的情况下移植我的应用程序,有什么建议吗?如果不了解更多详细信息,我无法建议一种适合您情况的确切移植方法 话虽如此,我将考虑将您的代理更改为事件侦听器。事件侦听器可以快速创建,提供通用的调用

我有一个用Delphi编写并移植到C#的应用程序,它广泛使用委托(这使我能够轻松地添加新模块)。我认为它会成为一款很棒的Android手机应用程序,但Java并不是天生的。我已经看到了一些Java代码的示例,这些代码试图使用反射进行委托,但对于小型设备应用程序来说,这似乎并不有效


关于如何在不进行大规模重新架构的情况下移植我的应用程序,有什么建议吗?

如果不了解更多详细信息,我无法建议一种适合您情况的确切移植方法

话虽如此,我将考虑将您的代理更改为事件侦听器。事件侦听器可以快速创建,提供通用的调用签名,并具有使用不同功能轻松实现的灵活性。而且,它们很容易动态移动。更改目标方法只需更换侦听器即可。调用方法只是调用事件

界面是另一种选择,但在移动平台上,界面更重,灵活性更低

希望这就是您想要的。

Java使用事件监听器而不是委托。这也称为观察者模式:
你可以考虑链接到一些描述“代表”的材料,对于那些不承认这个术语的人。不确定这应该是维基。这是一个具体的问题。人们不太可能在维基上回答问题。维基是用来讨论的,不是问答的